Generate matchers with macros

not() has been disabled as macros cannot currently expand to multiple items.
to_contain() has also been disabled as interpolated types don't work in macros.