`ipython console` requests the history from ZMQ-based kernels

This PR sets the history_manager to ZMQHistoryManager to request the history from the kernel over ZMQ. Tested on metakernel-based kernels, and with `ipython console` default ipython kernel.
In the first of those cases, the terminal console probably shouldn't be calling `log_output()`.

Still thinking about how best to fix the second; it's rather strange that `dir_hist` is part of the history manager at all; it's completely distinct from its main function.