Make some changes to how the CSV file is read in

So we get a list of objects rather than a list of lists.  Also refactor
slightly so we can later add other formats.

Also move the check for >= 2 points to arrows, so we only do that while
drawing them and keep the info for other uses.