Update matcher protocol for RSpec 3

"Update matcher protocol and custom matcher DSL to better align with the
newer expect syntax. If you want your matchers to maintain compatibility
with multiple versions of RSpec, you can alias the new names to the old.
(Myron Marston)
* failure_message_for_should => failure_message
* failure_message_for_should_not => failure_message_when_negated
* match_for_should => match
* match_for_should_not => match_when_negated"

http://myronmars.to/n/dev-blog/2014/02/rspec-2-99-and-3-0-beta-2-have-been-released
Explicitly enable both RSpec expectation styles
Bump RSpec 3 test dependency to freshest beta