Fixed up how metadata is set within Model instances since it turns out it was being overridden by util.inherits().
Documents are now stored with _model metadata for a faux polymorphism effect when searching a mix of inherited models.
Had to bring back the inherits() method since I think util.inherits() will mess with the hooks - need to add tests for this.
Minor inheritance bug fixes.
model.retrieved() and related hooks now get passed a tenant argument when present.
Final fixes to inheritance so it works as expected in a variety of different scenarios.
util.inherits() support is the big feature added, but also other miscellaneous bug fixes.
Version bump - 0.6.0
Merge branch 'release/0.6.0' into develop