My attempt at a game engine