* moved the min/max/bool/true/false undefs outside the essentials.hpp header guard, so that they will always get applied when the header gets included