Refractored visualizer code

Refractored visualizer code, clean tree layout. 
Added usage example and SBT build definition

Use PageUp, PageDown to zoom, arrow keys to move. 

Subsequent calls to showDDG update the graph, new nodes are shown with a red border. (Can be seen when pressing enter in the command line where the example runs).