Run IDE in threaded mode.
Add Octave support.

A new "backend" setting can be set to either "MATLAB" or "Octave";
this affects both the shell and the call graph instrumentation.

This depends on arokem/python-matlab-bridge#75.

A sort-of-unrelated change in this commit is that the Matlab or
Octave session is initialized asynchronously after the page has
loaded, instead of making the page hang.
Add context menu item for jump to declaration.
Fix error jumping to declaration of non-NameExpr.
Replace if statements with switch.
Jump to function name, not 'function' keyword.

This wasn't possible before since the function name wasn't its own
node and so didn't have position information. That changed with
Sable/mclab@32a0cbf15844f16d7bee95a2c9950469cabb1ef2.
Add basic jump to caller implementation.

Towards #2, but a little too simplistic -- it only jumps to the first
caller if there are many. Doing it properly is more of a UI question
though.
Fix jump to caller for function handles.

Related to #2.
Install pymatbridge from head until next release.