Grape game engine rewrite