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
One option is that we can continue to use Shoulda matchers (just the matchers, not shoulda itself. So we keep the `shoulda-matchers` gem but remove the `shoulda` gem) for this kind of validations (this and the above 3 examples). This will allow us to write elegant one-liner examples:
```ruby
it { should validate_precense_of(...) }
it { should validate_uniqueness_of(...) }
it { should ensure_length_of(...) }
```
That way we also don't need to create a invalid subject for each example. What do you think?