Split functionality between GraphicsView and GraphicsScene

- Split functionality between GraphicsView and GraphicsSCene so that only GraphicsScene need to know about BoxResizable. All other components work with the Segment object only;
- Make the segment object store non-normalized values, and move functionality from the SegmentScene to the Segment object. This makes the API more readable, and normalizing as late as possible is proably best given that we're using floats.

While InselectMainWindow still needs work, this should be the last refactoring to affect GraphicsView, GraphicsScene, BoxResizable, SegmentScene, Segment and Annotator significantly.

The Annotator object was also changed to have a larger image and initialize fields with common values when editing multiple segments.