Added callbacks for connect, disconnect, send and receive
* Allows adding authentication functions to connections
* connect/disconnect takes 1 param: the client/server object
* send/receive takes 2 params: client/server object, and the message sent/received

Removed debugging logs
Added shell=true in popen to allow shell commands
Exit system command on failure
Redirect errors to stdout so server will receive them
Merge branch 'master' of http://github.com/ameily/pypsi
Added wait to poll to prevent 100% cpu usage
Change width argument to 1-based index
Previously setting width to 80 gave 81 columns
* Add completer to help message
* Update exit help text to include shell and command name
Fixed bug in xargs command
Basic text overflow handling added to Table format
Added help text for system command
Change default width to 79 chars
Remove extra spaces in usage_error usage message
Update system command help message
Use clearer usage message in variable command
Added exception handling for setup_io()
Replaced references to self.error in the Shell class to print() statements. Shell.execute() now handles the return code from the context's setup_io() call. In the case that setup_io() returns an error, Shell.execute() will print an error message to stderr, reset the context's IO (reset_io()), and return 1 from Shell.execute (error).
Merge pull request #1 from jeinstos/master

Added exception handling for setup_io()
Fixed system help message
Fixes alignment issue with help command output table. The 'Name' column now uses the max topic command name width as its column width.