overall cleanup using "core" sub folder and pre-processor