Fixed PHP-303: Support the autoIndexId option for createCollection.
Merge branch PR #311

* pull-request/311:
  Fixed PHP-303: Support the autoIndexId option for createCollection.
Fixed PHP-508: Change BSON ID generation to use random "increment".
Merged Pull Request #312

* pull-request/312:
  Fixed PHP-508: Change BSON ID generation to use random "increment".
PHP-506: Added a test case, but the behaviour was already correct.
Merged Pull Request #315

* pull-request/315:
  PHP-506: Added a test case, but the behaviour was already correct.
Fixed PHP-490: "nolock" option in MongoDB::execute method.
Merged PR #313

* pull-request/313:
  Fixed PHP-490: "nolock" option in MongoDB::execute method.
Fixed PHP-704: Incorrect failure checks for stream reads

get_cursor_body() returns 0 on failure. I reviewed all other instances
of similar calls and they all look fine.
On failure, we also need to free the error message after throwing the
exception
De-yodafied.
Merged pull request #318
Fix build using llvm
Merged pull request #320
Fix bad fix for PHP-704

mongod will return empty data (0) when there simply aren't any results,
so we cannot use 0 for a failure condition.
An empty response it totall valid, as it means the query criteria simply
didn't get any results
Merged pull request #322
Fixed PHP-554: MongoId should not get constructed when passing in an invalid ID.
Merged pull request #321
Fixed PHP-537: Update limits according to default (16MB) or server info (maxMessageSizeBytes).
Throw an exception when a batch insert goes over the limit.

This will be addressed later, with the implementation of PHP-705.
Updated patch with comments from Hannes' review.