moved some things around, added a new c based engine
added a lot of functionality to the C version