Fixed #6327 -- Added has_module_permission method to BaseModelAdmin

* Added tests for this new method and for the other ones:
  * has_add_permission()
  * has_change_permission()
  * has_delete_permission()
* Updated the documentation
Hm, I see that rationale. On the other hand, having to check two methods everywhere seems error prone. I think it's better to document that `has_module_permission` only controls the visibility of the `app_index` and that you should override the `has_*_permission` methods to include `has_module_permission` if you want to completely shut off access (although I'm not completely happy with that either....). It doesn't seem like a very common use case anyway, but who knows...