Merge pull request #7 from bengourley/master

Expose correct idType constructor
Fix erroneous DB connect options for tests
Merge pull request #8 from cronnelly/patch-1

Fix erroneous DB connect options for tests
Working update many
Fixes passing of engine options to tests
Support complex queries on _id, such as $in
Vastly improve tests
Close DB Connection after each Mocha block
Updated travis.yml
Merge pull request #14 from Evh27/pr/travis

Updated travis.yml
Merge pull request #12 from Evh27/pr-engine-options

Fixes passing of engine options to tests
Merge pull request #13 from Evh27/pr-complex-queries-_id

Support complex queries on _id
Modify call to `collection.find()` to remove empty fields object

According to the docs:
http://mongodb.github.io/node-mongodb-native/api-generated/collection.html#find

The only time when you would call it with 3 arguments (ignoring the callback) is
`find(selector, fields, options)`, this is not what we are doing so it should
be removed. We only ever specify fields in `options`.

Also the only place where the projection query can be is in the 2nd argument.
http://docs.mongodb.org/manual/reference/operator/projection/meta/#projection
This is necessary to return the `textScore` $meta associated with a full text
search result. For some reason it does not work as an option in the 3rd argument.
Merge pull request #15 from domharrington/master

Modify call to `collection.find()` to remove empty fields object