initial rewrite of UI into canvas
first draft UI rewrite complete