Separate the engine, game and tools into separate components