Switch to ReadString instead of a Scanner

The Scanner returns data after the token before the EOF, which may
not be a fully formed metric line.
Also discard empty lines rather than attributing them to 'unknown'