Rewrite parts

ping @danizord @arekkas

Tests have not been updated yet.

This PR does the following:

* Remove all the PermissionProvider thing
* Now everything is wrapped around a role, the permission also

It's only the beginning, let's expect more. If you want to contribute, please PR against this branch.