Fix post-event dispatching for Database::getGridFS()

The pre-event was being dispatched twice. Also renamed the doGetGridFS() method to be consistent.
Revise order for expected MongoDB::createCollection() options

PHPUnit doesn't seem to care about this, but this is more accurate.
Fix post-event dispatching in Database::createCollection()

This corrects an invalid variable reference and adds a test for the method. Additionally, the handling for multiple driver APIs is moved to a "do" method.

Also, use doSelectCollection() to avoid dispatching extra events.
Test additional event dispatching in Database methods
Make LoggableDatabase::createCollection() API consistent with Database

LoggableDatabase must support the same arguments as the base method, which means duplicate the logic.

Ensure the created collection's name is logged, as well as the new options array. Deprecate the older log format (akin to what was done in CreateCollectionEventArgs).
Refactor LoggableCollection test
Merge pull request #127 from doctrine/database-methods

Improve events/logging for Database methods