remove rougue execute permission on tests
Fix segmentation fault from calling from_string with a non-string

* Calling BSON::ObjectId.from_string with a BSON::ObjectId segfaulted
* C function attempted to use BSON::ObjectId as a String
* Adds separate check/exception for non-String arguments
Allow read preferences in URI with no replica set.

[ RUBY-563 ]
RUBY-529 raise exception for multiple attempts to auth on the same db

Server side, MongoDB will log out the first user when a second authentication
is issued for the same database. In the past we've handled this by just quietly
updating the authentication credentials we have stored for that db.

The driver spec for auth now requires that we raise an explicit exception so
that users don't unknowingly log out previous authentications applied to the
database.
RUBY-564 Support for new (hashed, text, geo2dsphere) index types
Merge pull request #170 from estolfo/index_tests

RUBY-564 Support for (hashed, text, 2dsphere) index types
minor: remove phantom puts
minor: fixing misleading code comment in bson_ext
Raise error on insert into system collection.

Only if the collection is not system.users or system.indexes.

[ RUBY-492 ]
RUBY-475 refactor read preference logic

Move read_pool into Mongo::ReadPreference
Add #read_preference to produce read preference hash
RUBY-475 pin/unpin logic added to cursor
minor: moving away from .rvmrc, adding gitignore for .ruby-version
minor: merge should be called with parens here
RUBY-537 fixing behavior of strict, adding deprecation notice
improvement: limiting db#command calls for capped?, cleaning up init
improvement: clean-up of db, lots-o-improvements
Merge pull request #176 from mongodb/raise-error-on-system-insert

Raise error on insert into system collection.
Reverting the collection name check on insert.

[ RUBY-492 ]
RELEASE 1.8.4.rc0