basic engine structure w/ core classes