Clean up InvalidDocument/StringData handling.
Better error message when C extension raises InvalidStringData, PYTHON-533
Fix clang warnings.

This fixes all compiler warnings under clang.
The major change is safely downcasting from
Py_ssize_t to int (BSON string lengths and document
size are signed int32). This change also includes
some code cleanup in the functions touched to fix
compiler warnings.
Document the 'sparse' index option
Further C extension cleanup.
Fix a bug Coverity found.
Support the SASL PLAIN mechanism PYTHON-519

This is initially for LDAP authentication support in
MongoDB 2.6 (forthcoming). Warning: the username and
password are sent over the wire in clear text per
RFC 4616. SSL with cert validation should be used in
conjunction with the PLAIN mechanism to encrypt the
channel.
Support gssapiServiceName PYTHON-524

This also adds general support for authentication
mechanism specific options and validation.
Clean up faq content about django-mongodb-engine.
Clean up Database.authenticate docs PYTHON-534

This change removes the commentary about the admin
database since it no longer applies when using role
based authentication in MongoDB 2.4 and newer.
Consult the MongoDB manual for details.
Validate cache_for (and deprecated ttl) PYTHON-518
Fix llvm-gcc warnings.

This also corrects a previous change that
caused problems on python 2.4 and 32 bit systems.
Raise OperationFailure, not AutoReconnect, if auth fails during lazy connection. PYTHON-517
Verify RS client raises the right error if auth fails during lazy connection PYTHON-517
Fix compiler warnings from Visual Studio.
Really fix the bug Coverity found earlier...
Fix test failure on OSX due to low ulimit.
Unused code in Sphinx extension.
Fix issues found by cpychecker.
Add MongoClient.get_default_database(). PYTHON-461