Uses ifdef guards. Adds retrospective docs.