Feature/tlt 426 custom error framework

Note: this PR requires the changes with the same feature branch name (feature/TLT-426_custom_error_framework) in icommons_ui and django-canvas-course-site-wizard).

* Adds draft versions of custom display error messages to settings, to be used with subclasses of RenderableExceptions
* Adds icommons_ui logging to settings files
* Updates project-level error page 500.html to show RenderableExceptions if rendered by the custom error page mixin 
* Refactors 403, 404, 500 errors to a single error page 500.html to adhere to DRY principles

Is there much value to having this as a project-level setting?  I think we could easily get away with setting this directly where the mixin is used, but I haven't reviewed the course wizard PR yet to confirm.