DW: Added datadictionary permissions and checked role using issubset of the...

... configured permission
isn't this check equivalent to 
```python
set(cls.class_to_permissions[type(obj)]).issubset(set(permissions))
```
?

either way, can you explain why this change is necessary?