Completely changed the structure of ConfigFiles interfaces classes so now we use OverLayerDefinitions as a base abstract class for every definition. Update #4
First Try on Merge Update #4