Allow hint by index name

http://php.net/manual/en/mongocursor.hint.php
Do not override "safe" write option in DocumentPersister

The "safe" override dates back to the first implementation of locking modeled after ORM (daedacfbfddca96c3d75d19acdf50b9e1ca1be56). This was some time before default commit options were added as a configuration option, and "safe" was made the default (d0f2a9dae35ea6931167d169b281c44f71385034). We should be able to safely rely upon the configured write options.
Use "w" instead of "safe" for write option with driver 1.3+

Doctrine MongoDB already converts "safe" to "w" (doctrine/mongodb@c7b6ef9ad7140a9f29a7b964bbfa9ed16e00ffd1) but it's wise to use the correct option anyway.

Fixes #655.
Use local vars for index keys/options

This isn't really necessary for keys, but it will make the code more readable when we add more options processing.
Set default "w" or "safe" option when creating indexes

Depending on the driver version, "w" or "safe" should be set by default. doctrine/mongodb#168 may make this unnecessary, but there's no reason ODM cannot be explicit.

Fixes #655.
Do not specify write concern options in tests

The default commit options from ODM's configuration will suffice. In the case of CollectionPersisterTest, those options will not be used, but the MongoDB driver will still default to w=1 for 1.3+ (when MongoClient is used). Using "fsync" in tests is also completely unnecessary.
Add MongoDB driver 1.5.1 to Travis CI matrix
Answer PECL build prompts for MongoDB 1.5+ driver

Thanks to @boutell for the tip in http://stackoverflow.com/a/21666096/162228
Merge pull request #1 from crimsonronin/hotfix719

Merged #824