Added Edge and Oval class
Changed shape class to have width and height instead of point to be more clear. Added methods to CanvasPanel to handle different shape types.