RUBY-576 documentation fix for ensure index

- Syntax correction for Collection#ensure_index examples.
- Added Ruby 1.8 and Ruby 1.9 examples for Collection#create_index.
RUBY-576 Adding index type validation for hash syntax

The nested array syntax will need to remain as long as we support Ruby 1.8 but I'd like to see us start spotlighting features and syntax from 1.9+ more. I'd like to see us push people towards the new hotness in our docs and examples rather than continuing to propagate the old.

While I was correcting an issue in our docs, Emily pointed out that we don't validate index types for the hash style syntax available in Ruby 1.9. This commit fixes that and improves a few things from the perspective of code readability/maintainence.
RUBY-572 fixing call to checkout_reader in DB#authenticate

The interface for MongoReplicaSetClient#checkout_reader was changed recently in RUBY-475. This usage of checkout_reader was missed and currently calls to DB#authenticate raise an exception.
clean-up: out-dated, we're not running them and auxiliary is misspelled \o/