Common: Add custom UTF implementation

To get rid of boost-derived code.
Common: Add utf8 append & get functions
Common: Add utf16 append & get functions
Common: Remove locale.h

It has been replaced by utf.h
Math: Add constant for e

e is a mathematical constant. By the way, I've memorized it to 21 digit:
2.71828182845904523536.
Math: Remove #undefs

Those did not make any sense, since PI is defined as hrengin::math::PI.