create HeaderMap typedef
add get_address, get_data to DataRow

The DataRow class no longer automatically parses the line.  It will only parse the address during construction.  This allows us to identify commands first, then parse the data value.  After we find a command, then we can call the parse_row method to get all the data from the line.  It would be even better to have a 'command' class that only parses the specific data it needs to keep the speed up.
Remove debugging output from main.
Update comments on the class files.