Studio Support for Content Libraries (SOL-1, SOL-2, & SOL-3)

@antoviaque @explorerleslie @cahrens

**Background**: This is the UI code to enable creation and editing of [Content Libraries](https://openedx.atlassian.net/wiki/display/SOL/Content+Libraries). Together with #6033, it implements SOL-1, SOL-2, and SOL-3. Once #6033 has been merged to master, this branch is to be merged to `content-libraries`, which will become the new feature branch for library support.

**Discussion**: Architecture discussed extensively on [the wiki](https://openedx.atlassian.net/wiki/display/SOL/Content+Libraries) and in meetings, then the revised proposal was presented to the [Arch Council](https://openedx.atlassian.net/wiki/display/AC/Architecture+Council) on Oct. 21 and given thumbs up.

**Partner information**: 3rd party-hosted open edX instance, for an edX solutions client.

**Merge deadline**: ASAP - several other PRs are ready and blocking on this.

**Dependencies**: Requires #6033.
Out of context, `'e.g. Computer Science Problems'` will be hard to translate for translators. Please provide a translators comment clarifying this string's usage. Please review http://edx.readthedocs.org/projects/edx-developer-guide/en/latest/i18n.html for more on i18n guidelines and how to write translators comments for all types of files.

Also remember that special characters can and will be introduced (unicode, apostrophes, etc) so it is better to use double quotes, always. Please see http://edx.readthedocs.org/projects/edx-developer-guide/en/latest/i18n.html#coverage-testing for how to generate dummy strings (which will include unicode and apostrophes) and test that your i18n markup is correct.