I don't think its gonna work with anything but haskell.
Commands are nicer than calling functions directly.
Add PerdSwitch command.
I don't think we need redefinition on re-sourcing?
Use unique pane_id instead of pane_index. This way even multiple ghci instances will work sometimes.