frameworks/base: Fix build in ISO C++11 mode

Fix various incompatibilities with ISO C++11:
- Assumption that char16_t is defined to uint16_t
- constexpr usage
- macro constructs that could be interpreted as string literals
- enum typesafety

Change-Id: I3642537d3995c3766f69362bbd54ebcc05a9864c
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>