Debug hooks ext

Enhanced debug-hooks wrapper that adds support for automatic configuration of new environments, including:

* Option to use default tmux key bindings instead of screen bindings
* Upload files, such as custom bash, vim, etc. configs
* Execute custom init scripts upon first connect to a new environment
* Support for automatically importing a set of credentials from Launchpad for paired debug sessions
* Support for easily joining a paired debug session
* Option to automatically restart and debug a failed hook (subsumes the juju-debug plugin, and doesn't require a separate terminal window)
* Option to automatically sync changes to the charm on the remote machine back locally when the debug session is ended, a la juju-sync-charm
* Improved selection of unit to debug (debug by service name, or prompt with default based on charm currently being worked on or currently failed, etc)