Added `draw.py` to recieve all the plotting related code (as functions
taking a `Trajectories` object as fist parameter
try / except incase matolotlib import fails
Changed the initialisation of max_assigned_cost so that it will be
updated even if the guessed value for 'cost' is high

Avoid getting stuck in a too high or too low aternate costs loop
small fixes here and there