A single commit for a couple changes:

* Add displayDyn, which allows manipulating the functions used to
  convert items into Display in ways that would be impossible or
  at least ackward with IHaskellDisplay.
* Add displayChan, which allows sending Display items as a
  side-effect. ihaskell-rlangqq uses that feature.
* Add mode convert that handles ipynb <=> lhs. Some bad style is left
  over.
* Alternative build.sh
* JSON is defined over text, not bytes, so use Text in the
  ipython-kernel. IPython rarely calls encode(self,'utf-8'),
  so we should also have encoding done once only by the json parser
  itself too.