Implementation of the compile state tracker object

This object is to be swapped wherever 'core' is used in compile phase
Added CompileStateTracker to the project file