Make escaping for json simpler and more consistent in Mako templates
- add escape_json_dumps to escape and json.dumps
- add escape_js_str to escape javascript string
- refactor Studio to use escape_json_dumps in Mako templates
TNL-2646: Escape json.dumps
<nav> elements for the actions a user can perform on a perticular
page contain inaccessible label whic causes screen reader users
confusion regarding to their current navigation.
TNL-1531
It looks like the 'New Course'/'New Library' buttons on the studio home page.
Clicking the 'Add Component' button scrolls down to the 'Add New Component' buttons.
Admin ("Instructor") - Can edit and assign permissions to other users
Normal ("Staff") - Can edit
User - Can view the library and use content from it but cannot edit it or its blocks.