Improve logic for BP_Group_Documents::current_user_can

* Update PHPDoc
* Set/improve parameter defaults
* Use BP helper functions where possible
* Prefetch member/mod checks. These queries will be cached for current group, which is the main context, and they're light queries for the other, less frequent, contexts.
* Set default switch case to be mods_only, since mods are more likely to be trusted