Support for preprocessing & compiler directives
Added unit tests for directives