refactored the code to get rid of canvas
canvas is no more (still the controller needs cleaning up)
controller refactoring including support for tables
Merge branch 'canvas'