Don’t use std::pointer_traits

Apparently the C++ library used by TravisCI doesn’t have std::pointer_traits
Added an explicit destructor for MatcherException

Some compilers just can’t live without it