Support SI CSV files as seen on helga-o.com

A number of changes necessary here:
* 44/46-column detection now done by searching first row of competitor
data for first control code, rather than using header line.
* Rows of competitor data are allowed to lack data for the last few
controls.
* Course lengths can be specified in metres as well as kilometres.
* Placings for valid competitors can be empty as well as numeric.

Fixes #5.