minor: setup push to coveralls from travis
minor: documentation fixup in serializers
minor: relocating shared examples

i'm creating a new home for shared examples and updating the spec_helper to require up all shared examples dynamically. this will make it a lot easier to organize shared examples project wide later on and doesn't restrict us to keeping them all in the one file we had before.
minor: a small clean up of rake task structure

* removed yard core extension, mongodb.org docs don't even support this anymore
* renamed 'deploy' to 'release', this just makes more sense
* updated Gemfile to support changes, doing it the bundler way
* cleaned up the Rakefile just a bit
minor: making the switch to rubocop

Rubocop has support for JRuby and REE, pulls from a better community driven style-guide and its more easily extendable than Tailor. Rubocop doesn't run in Ruby 1.8, but I think we can live with that. Overall, its still an all around win to make the switch.

This commit removes Tailor and adds Rubocop in its place. I've also updated our guard file to add Rubocop support when it's available.

I've also added the ability to skip the code quality tests when needed by using:

  rspec --tag ~quality:true

I've tested that these changes behave as advertised in Ruby MRI 1.8/1.9/2.0 and JRuby.
minor: making a quick compliance pass

after adding the new style linter, this is just a quick pass to make all existing code conform. let me know if you see any issues here.

all style rules come from a community style guide [1] where you can find a full explanation of each.

[1] https://github.com/bbatsov/ruby-style-guide
new uri_spec stuff
move authSource and authMechanism to options
refactor URI class