PHP-819: Fix MongoCollection::setWriteConcern() and split tests

Fixes a bug from cd67c8910b483b6ef5324589b5e0c33b6e4325fb, where integer $w arguments to setWriteConcern() were set as 3.

This also splits the MongoDB and MongoCollection tests, and adds additional test cases for string $w values, inheriting MongoClient (parent) write concerns, and setting the timeout.
Merge pull request #609
WIP: Added createIndex.
Refactor is_valid_dbname out of this function.
Add function to check for minimum version just like the API version.

Probably not in the best spot, but this should do.
PHP-960: Add MongoCollection::createIndex.
Added test cases

- One for createIndex/ensureIndex with scalar (string) index field
- One for options to createIndex/ensureIndex (unique, dropDups, name and
  expireAfterSeconds)
Fixed test, as it hardcodes 27017.
Added support for socketTimeoutMS for commands and deprecate timeout.

Adjust the test so that it is not throwing deprecation warnings, and also fixed
another test as because of Hannes' brand new write insert commands the
socketTimeoutMS in this test now also started working and the PI * 100 was too
little time.
Remove superfluous parameter.

This should be added again once we start supporting multiple mongos failovers
etc.
Fixed exception class for index creations.
Added checks for invalid index specifications

I didn't want to change the exception class, as that is of course
a BC break.

Added some extra test cases too.
Fixed hardcoded port number.
Merged pull request #607
Fixed package.xml
BUMP 1.5.0RC1
Back to -dev.