added Canvas class for graphical output