Make restrict_access flatter and more readable.

What I meant in my mangled sentence in #187 is that `@restrict_access`  is complicated and I would like to get it simplified. So here is a commit to do that :)

Calling `is_mod_of_all` with arguments is strictly not necessary, but it makes it more readable. Plus it sounds like the function might be useful somewhere else and this way we can move the function to `helpers` or elsewhere without any problems.