Final project for Programming for Games