Multiple changes

- Updated the entity/component system implementation.
- Minor updates to the type_traits.