Starting the visual output part of this.  If done now I will have to change minimal code as I go along.