Added setting use_unique_wiki_id and property wiki_id to CourseDescriptor.

Currently the not-always unique wiki_slug setting is used for a course's root slug.
wiki_id returns wiki_slug if use_unique_wiki_id is False and CourseLocator.package_id
otherwise. This way old courses can continue to use the existing slugs and new courses
can opt-into unique slugs.

LMS-2136
When course is created in studio CourseDescriptor.use_unique_wiki_id is set to True.

To maintain backwards compatability, the value of use_unique_wiki_id=False. However,
new courses should default to using unique slugs for the course's wiki. So
use_unique_wiki_id is set to True when creating a course.

LMS-2136.
Added get_courses_for_wiki method
Added get_courses_for_wiki_id(self, wiki_id) to mongo, xml and mixed modulestore.

This method returns a list of courses which use the particular wiki_id. It is used for
checking permissions in the course_wiki app.

LMS-2136
Refactored permissions checking for for course_wiki.

CourseRole names have a new format (type_org.number.run). Previously
when checking if a user was staff for a course wiki type_org/number/run
and type_number format role names were checked by parsing user group names.

This logic has been refactored to first fetch all courses which used the
particular wiki_id and then use courseware.access.has_access to check if the
user has staff permissions on any of the courses.

LMS-2136
Use mock loc_mapper
Pass loc_mapper as parameter