added some work on new entities, fleshed out systems and flattened OO hierarchy