PHP-861: MongoCursor::maxTimeMS() functional tests

Explicitly test timeouts during OP_QUERY and OP_GETMORE, and use server fail points to avoid slow excution.
Merge pull request #623
Fix typo in MongoCursor::maxTimeMS() functional test
Merge pull request #626
Mark the Write Options as optional in MongoWriteBatch->execute()

We inherit them from the MongoCollection in the ctor, which then
gets overwritten by the explicit Write Options argument in the ctor
.. No need to require it to be passed during execute
Start counting from 1
Add MongoWriteBatch::COMMAND_[INSERT|UPDATE|DELETE] constants
Use $mc->selectCollection(dbname(), collname(__FILE__));
Replace server error message with %s as per CR
Merge pull request #618 from bjori/BATCH-QA-write-concern-optional

MongoWriteBatch QA

* bjori/BATCH-QA-write-concern-optional:
  Replace server error message with %s as per CR
  Use $mc->selectCollection(dbname(), collname(__FILE__));
  Add MongoWriteBatch::COMMAND_[INSERT|UPDATE|DELETE] constants
  Start counting from 1
  Mark the Write Options as optional in MongoWriteBatch->execute()
Remove extra MongoCommandCursor::reset() method.

I honestly thought it was part of Iterator, but it is not :-)
Merged pull request #624
PHP-1026: Include connection in findAndModify exception message
Merge pull request #632
PHP-861: MongoCursor::maxTimeMS() functional test for mongos
Create configureFailPoint helper function in server.inc
Test MongoCollection::findAndModify() and maxTimeMS option
Test MongoDB::command() and maxTimeMS option
Merge pull request #634
PHP-1027: Support maxTimeMS and exceptions in MongoCollection::group()