Raise better IOError if a connection file is not found

when starting parallel.Client

Example:

    IOError: Connection file u’~/.ipython/profile_default/security/ipcontroller-client.json' not found. Is a controller running?
Allow widget views to be loaded from require modules

This required refactoring things that create widget views to use
callbacks instead of return values.
Make changes suggested by @jdfreder
Fix logic
Put callbacks for create_view and create_child_view in options

And add errback support
Clean up some JS code
Remove superfluous error checking
Fix ansispan() to ignore stray [0m
Use more yellowish color for ansiyellow
Test IPython.utils.fixConsole() (really ansispan())
support buffers in comm messages

- add buffers arg to comm Python api
- support binary websocket messages when buffers are present
- reimplement utf8 in javascript, because javascript is the best
s/unserialize/deserialize
use utf8.js

move message serialization to kernel.serialize module
support binary message from javascript
use TextEncoding for string<->ArrayBuffer

requires text-encoding js polyfill, for now
install text-encoding polyfill
test websocket-friendly binary message roundtrip

Python-side
include buffers when resending message

in zmq.session
test binary websocket messages

only runs on slimerjs for now
unsigned ints for offsets

because signed ints for sizes is icky