Refactored GraphController
Refactored GraphController

Divided up code into multiple methods as to increase readability. Also adjusted the way GraphSegments are drawn. They are now placed onto the graph after all the paths are drawn. This prevents paths being drawn over the segments.

ProgrammingLife2016/PL3-2016