Use forward delcarations to reduce header file interdependencies
Removed the mostly useless inputDir configuration option
Made StrainFunction into an abstract base class