Preprocessor is rudimentary, but probably good enough for now.

All it does is #ifdef or #if defined() with horribly simple boolean logic