ADDED:
+ you can now disable logging by un-defining LOGGING_ENABLED
+ un-def'ing LOGGING_ENABLED turns all functions into inline stubs... is there a better way to avoid run-time overhead?
+ slightly improved docs to match the implementation