cache mechanism is not complet and cause edge case

When you remove role, method `has_role?` provide wrong information.
```
user = FactoryGirl.build(:user)
user.has_role?(:foo)
# => false
user.grant(:foo)
user.has_role?(:foo)
# => false
>> psy.roles.map { |r| r.name }
=> ["foo"]
```

You can try this
```
bundle exec rspec spec/rolify/role_spec.rb -e 'Rolify cache'
```