lib/base/Math.hpp should be math only
In lib/base/Math.hpp
, there is a lot of stuff not related at all to math:
-
#include <...>
std and boost files using std::...
-
#define
FOREACH, pointer casting
most of it should be in a separate file, like lib/base/base.hpp