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()
Merge pull request #633
PHP-1021 Support maxTimeMS option in MongoCollection::findOne()

Also adds support to MongoGridFS::findOne(), since it wraps MongoCollection.
Merge pull request #625
PHP-914: ->aggregate() needs explain facility

Add support for additional $options array when using a single array of pipelines

$pipeline = array('$operator' => stuff);
Previously the proto for this function was:
->aggregate($pipeline [, $pipeline [, $pipeline]])
or
->aggregate(array($pipeline, $pipeline, $pipeline))

Now we support also:
->aggregate(array($pipeline, $pipeline, $pipeline), array("option" => "value"));

This makes it possible to pass arbitrary arguments to ->aggregate(), such as:
- array("explain" => true)
- array("maxTimeMS" => 100)
Added support for maxTimeMS option for aggregate
Skip these on pre2.6
Improve zpp readability as per review
Use configureFailPoint() in maxTimeMS tests
Rename tests for consitency