gateone.js:  Added a whole new module:  GateOne.Events.  It is inspired by Backbone.js Events.  I will be using it to take the place of the various callback hookes (e.g. termSelectCallback) throughout Gate One.  It also provides a cool mechnaism for decorating functions:  GateOne.Events.before() and GateOne.Events.after().  before() lets you call a callback before any given function is called (modifying it's arguments if you want!).  after() lets you call a callback after any given function is called (optionally, modifying the returned value before it is actually returned!).  So if you want your function to be called every time GateOne.newTerminal() is called you can just do this:  GateOne.Terminal.newTerminal = GateOne.Events.after(GateOne.Terminal.newTerminal, yourCallback);  Of course, I also plan to fire a pre-defined "new_terminal" event inside of that function as well.  This new module will be added to the documentation soon.
gateone.js:  Added a new function:  GateOne.Utils.removeQueryVariable().  It will remove the given query string variable from the address bar using HTML5's window.history.replaceState().  So if your plugin accepts some wickedly long parameter in a query string and you don't want it to clutter up the user's address bar this function is for you.
gateone.js:  Gate One will now detect when the backspace key is sending the wrong character for the connected terminal and automatically switch from ^? to ^H and vice versa.  Convenient, yes? :)
gateone.js:  Modified GateOne.Base.update() slightly to add some additional properties to methods that are created/updated via this mechanism...  They will now have <method>.parent set to the parent object and <method>.NAME set to the method's name.  This is so we can update them in place with things like <method>.parent[<method>.NAME] = <modified method>.  Trust me, it's useful (and cool!).
go_process.js:  Added support for detecting the incorrect backspace key (in conjunction with the above).  No reason to look for this stuff in the main thread.
gateone.py:  You can now set whatever GateOne.prefs you want by passing in a JSON-encoded query string via a URL query string.  For example, if you wanted to set the user's theme to 'white':  https://gateone.company.com/?prefs={"theme":"black"} .  This also works for API authentication with the 'auth' object:  https://gateone.company.com/?prefs={"auth": {"api_key": "..."}) .  So if you want to use the new 'location' functionality to open a terminal in its own window (while still working with API-based authentication) you can.
gateone.py:  Replaced all occurrances of self.get_current_user() with self.current_user.  They are essentially the same thing except that self.current_user is an @property that caches the result so it's slightly less overhead.
gateone.py:  Added a helpful error message for when an API key cannot be found in api_keys.
Templates:  Modified index.html to support the new pass-prefs-via-URL feature.
Documentation:  Added GateOne.Utils.getQueryVariable() and GateOne.Utils.removeQueryVariable() to the JavaScript docs.
Documentation:  Fixed a horrible bug in the embedding documentation where I put 'goURL' when it should be 'url'.