Modified tasks to have an id (important for vns and probably other
things later). Equality/nonequality of tasks is whether or not they have
identical ids.
Id is an int set by what order the tasks are read in from a csv.

VNS now runs, so we can actually test it later.
Merge remote-tracking branch 'origin/master'