gateone.py:  JavaScript files served via the send_js_or_css() function (e.g. bookmarks.js) will now automatically get appropriate sourceURLs (e.g. "//# sourceURL=/terminal/static/terminal.js") appended to the end of their output to make debugging easier.
gateone.py:  JavaScript plugins will now automatically get static file handlers added so that sourceURLs can work properly.
gateone.py:  Fixed a bug in ApplicationWebSocket.list_server_users() where it would throw an exception if debug logging was enabled.
app_terminal.py:  Added logic that automatically adds static file handlers for plugins that have static directories.  This is so that the sourceURL feature will work.
app_terminal.py:  Fixed a bug in TerminalApplication.list_shared_terminals() where it would raise an exception if no terminals have been shared yet.
terminal.py:  Fixed a bug where you could get an exception if PIL had trouble identifying a file (e.g. when you 'cat someimage.jpg').
terminal_input.js:  Added some extra "terminal:keydown" and "terminal:keyup" events that can be used to manipulate things before built-in logic does its thing (mostly for plugins/embedding situations).
terminal_input.js:  Added "terminal:send_chars" which can be used to manipulate/interrupt characters before they're sent to the Gate One server.
gateone.py:  Changed around/optimized some import statements.
term_ww.js (Web Worker):  Added a sourceURL by hand (it's our only Web Worker so there's no point in adding a framework for sourceURLs).