Adding support for Replica Sets

* Supporting for multiple hosts and mongo uri's (using uri_parse)
  - Client('foo', host='mongodb://localhost:27017,localhost:27018/test')
  - Client('foo', host=['localhost:27017', 'localhost:27018'], dbname='test')
  and keeping the old:
  - Client('foo', host='localhost', port=27017, dbname='test')
* Increasing required pymongo to 2.0 for uri_parse
* Creating a new Connection() is now asynchronous
  - must be passed a callback which is called with the connected connection
* Updating Connection's to replSets to behave the same way as pymongo
* Adding Pool.command to run db commands
* Making .gitignore more vim friendly