* Start to wrap target system in type_traits-like interface