Adding Link widget
Adding directional link widget
Fix whitespace
Updated example notebook
Load link widget javascript
Load the link models
on("destroy",...) -> once("destroy",...) so we don't keep a reference to it, preventing gc

Thanks to Sylvain Corlay for the suggestion.
Allow FileLinks to not recursive into subdirectories
Remove unneeded modules, and added docstring info on recursive parameter
Add None as a widget visible value to allow for visiblity: hidden

Now, visible can have three values:
  * True - show the widget
  * False - hide the widget and collapse the empty space
  * None - hide the widget and show the empty space
Merge remote-tracking branch 'public-upstream/master' into links-rebase

Conflicts:
	examples/Interactive Widgets/Widget Events.ipynb
Changed the display order of rich output in the live notebook to match that of nbconvert.  This makes more sense than the other way around due to the need for notebooks already shared on the web to remain consistant. Conversely local notebooks can simply be edited to match the new order.
Implement blocking channels without Python threads
Collapse Qt out of process channel class hierarchy
Merge Qt*ChannelMixin up into QtInProcess*Channel classes
Factor out code to set up ZMQ sockets
Remove some dead code
Use messaging methods on kernel client instead of channel objects
Use client.execute in execute preoprocessor
Move methods to send specific messages from channels to KernelClient