Cleanup specs

Major overhaul to specs:

* Unified formatting
* Unified spacing
* Fixed broken logic
* `context` instead `describe`
* `let` and `subject` instead of `before` blocks with instance variables
* `expect` and `to` over `lambda` and `should`

Generally bringing the specs up to RSpec 2.0 standards.