Refactoring Entity - Work in progress

- Break entities into separate files
- Use traditional construction of JS objects and prototypal inheritance