restructuring the code to make it clearer. Settings for displaying things are now encapsuled into an algebraic type named "DisplaySettings". Also added some helper functions to work with "Points".