Major refactoring

File class has been reworked to not take initial data on instantiation.
A subsequent method call is now required.

Exceptions are more specific.

The relationship between Header and Row classes has been refactored.

Additional bug fixes.