3.0 entity

A simple start into hydrating table results into entity classes. I decided to maintain finders so that they can both work with both non-hydrated and hydrated results, mainly because it was very simple to do and it is a feature I think plenty people could benefit from.

Stuff to do:

- [ ] Unit test Entity class getter and setter methods
- [ ] Figure out a way of injecting configs into the table classes from the Entity class (a big ? for me)
-  [ ] Lazy loading association properties