Assignment 5 Game Engine Architecture Solution