Text this: Using Game Development to Teach Software Architecture