Switching to RSpec for testing

This is the first installment of the potential switch, it illustrates the format of model testing. If anyone has any input on how I can make these tests even better, while maintaining readability, I would really appreciate the help. I purposely only tested one method so that we can focus more on the style versus what is actually being tested. I'm hoping to decide on a style before this PR is merged.  @ferrous26 @zhangsu
We could add
```ruby
  config.expect_with :rspec do |c|
    c.syntax = :expect
  end
```
to embrace the new recommended expect syntax of RSpec. We should still use `it { should ... }` For one-liner examples though, as it is more readable than `it { expect(...).to ... }`, and will not be restricted by this config.