fixes #19

Applies the filters first so that a filter can be applied to an incoming object, rather than being converted to an array first.
Removed the possibility of calling makeArrayFromAnything() twice.
Modified the Entity->to() function so that the filters are applied to the Entity first, then the Vos are filtered and finally an array of data is returned.
Altered the inbuilt RemoveMongoId and RemovePassword filters so that they now accept an Entity passed to the __invoke function.
Added a test to test the filtering of these to standard filters.
Changed the Entity->to() functionality back to passing data arrays through the export filter chain.
This also stops the original object from being modified.
Merge pull request #21 from russholio/19

fixes #19
Fix undefined variable when throwing an exception.
Merge branch '1.0.x' of github.com:treshugart/Model into 1.0.x
Write regression test for applying filters using @ensure and apply a patch.
Write tests and fix regression where an @ensure doc tag would not be parsed if it included a period at the end.
Remove singleton functionality.
Add @join tag for repository methods so that they can join on method return values to properties of a returned entity. Fix minor issues with cache and ensure tags.
Temporarily re-enable static calling.
Fix issue with booleans not being initialised to a false value by default. Minor update to entities.
Fix bug in VoSet VO.
Don't match using regular expresions, only check equality in array queries.
String 'false' and string 'true' should be converted to false and true boolean values respectively.
Convert null and NULL values to false.
Simplify logic.
Add license.
Updates filter documentation