Refactor ala active record

Work in progress - don't merge yet. This commit adds an active record like restyii client interface, that should in most cases be a drop in replacement for normal active records.


Things still to do:

[] data providers
[] converting embedded records to the right type
[] `findAllByPk()`