update type.hpp, support std::tr1::unordered_map and std::tr1::unordered...

update type.hpp