parse `ObjectID` strings

Fix for the recursive toJSON calling in base modella which was
converting `ObjectID`s into strings before the save method is called.

Setting `{type: ObjectID}` on an attribute will cause any string value
passed in to be parsed into an `ObjectID`.
updated to newest modella for testing
do proper checking
also supprt `'ObjectId'` and `'ObjectID'` as types for parsing
Merge pull request #20 from paulbdavis/parse-objectid

Parse objectid
use $unset in update queries when the attribute has been unset on the
model
remove $unset for attrs not explicitly set to `undefined`
added test for attrs that were not explicitly unset
remove log statement
clean up new testing db
use `model.unset` to detect when to use `$unset`

than relying on an attribute being explicitly `undefined`
`models.unsetAttrs` instead of `model.unset`