ENH: Add console visual

Ready for review/merge.

Closes #418.

Example output:

![screenshot from 2014-09-02 10 27 45](https://cloud.githubusercontent.com/assets/2365790/4122587/1b455534-32c6-11e4-9821-e0ca0e949bd6.png)

Do you think it should be both a visual and a widget, or just a widget? Can you put Widgets on top of other parts of the Canvas (and if so, is the z-order defined)?