Line parser and value object exchanges attributes

By ensuring that line parser fields and value object methods share the
same names we can pass a hash of attributes when handing over parsed
values. This lowers the knowledge and complexity of the mapper lambdas.

Fixes a faulty assertion on the a full file parse.