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.
Fixed test case after message format changes.
Merge PR#323 (PHP-537)

* pr/323:
  Fixed test case after message format changes.
  Updated patch with comments from Hannes' review.
  Throw an exception when a batch insert goes over the limit.
  Fixed PHP-537: Update limits according to default (16MB) or server info (maxMessageSizeBytes).
Fixed PHP-665: Add support for Auth Specification

Implemented support for surrogate users, defined in a seperate database
then currently using.

Also fixed a memory leak when switching between databases with
credentials.

Added support for the authSource connection string option, as well as
future compatability support for authMechanism.
Fixed CS and tweaked error messages a bit.
Merged pull request #319
Fix PHP-686: Constant reconnect attempts to a server that is down

This is because on every single 'new MongoClient' we would do a full
topology discovery and attempt to connect to every single server we
could find - even though we were previously fully aware of the fact the
server was down.
This may have seemed like a good idea, we would quickly discover when
a server became available again..

However, if the machine is completely off we have to wait until the
connect() times out. Again. And Again. And Again, on every 'new
MongoClient'.
In practice that means all requests coming into the application will
have to wait 1second (default) times down servers, which ofcourse is
unacceptable.
PHP-686: Fixed CS & info message per PR#317 review
Fixed PHP-686: Don't connect to server that is down

Made the blacklisting into a linked list that maintains the "last_ping"
so we know when we should attempt to reconnect to it.
The linked list is implemented by extending mongo_con_manager_item
and its helpers to be more generic
Removed unused variable.
Fixed CS issues.
Removed global declaration, and include the correct include file.
Make mongo_blacklist_destroy static.
Documentation, and changing variable names to make more sense.
Fixed test cases.
Missed a test case for fixing.
Merged pull request #317
Cleanup compiler warnings