Improved save/load logic #20

Now when we load a saved image the canvas is cleared. The app tracks
the state of the canvas and when we try to load without first saving it
prompts us if we want to save our drawing first.
The undo functinoality is not implemented and click the undo button
will cause some bugs.