Code split

hopefully this will start to look like a real engine...