Add analog of std::underlying_type.
Store enums in dynamic_t as underlying type, not as always int.

1) Now dynamic_t may safely store enums with underlying type uint64_t.
2) On gcc 4.4 user must not think how to store enum in dynamic_t. kora::to_underlying_type must always be assigned.
3) Now dynamic_converter to enum performs numeric conversion, and may convert uint_t to the enum. But it was not safe any way.