Fixing format() to not compile if parameter's type is not streamable. Fixed has_member_trait to use std::false_type and std::true_type internally instead of std::is_same