Split apart README, flesh out Rubydocs

A while back I added a bunch of examples to the README. I'm unhappy with this because I feel like it is overwhelming for new people.

I feel like a better place for extended examples are in the Rubydocs. I feel like if we are going to link to the Rubydocs then they should be comprehensive and not sparse like they are now.

To check out these changes locally, run `bundle` to install YARD, run `yard doc`, then open up doc/index.html in your browser.

The new README looks like this: https://github.com/thoughtbot/shoulda-matchers/tree/ew-split-apart-readme

The new gh-pages which will replace the current gh-pages is located here: https://github.com/thoughtbot/shoulda-matchers/tree/ew-new-gh-pages

---

Things left to do:

- [x] Fix Travis -- we can't use private_constant in Ruby 1.9.2
- [x] Fix scrolling through the docs so that if you jump to a matcher (e.g. `validate_uniqueness_of`) then the section overlay at the top doesn't appear until you start scrolling
- [x] Add a README to the gh-pages branch (so people know how to generate the docs)
- [x] Rebase against master, include any new documentation
- [x] Fix so that when linking to a method the fixed header doesn't appear until you start scrolling
- [x] Ensure that in examples for ActiveModel models we are using ActiveModel models instead of ActiveRecord models
- [x] When a new version is released, if it's a prerelease, don't publish the docs
- [x] Fix Travis tests again