Add 'unless' support and fix rake tests

We tried to run existing tests with `rake test` and they failed with some exception. So we fixed them before adding a new feature and then added the feature in a true BDD manner.

The new feature allows us to improve readability when describing models. Compare:

```ruby
  allows :destroy, if: proc { |article, user| !user.banned? && !article.important? }
  # vs
  allows :destroy, unless: proc { |article, user| user.banned? or article.important? }
```
This seems like a strange example of the use of `unless` due to the presence of `not` within the unless condition. Double negation is bad because I have to stop and think about what this line is saying.

Do you have a better example for the usage of `unless` that you can use in this test?