Framework for writing matcher objects
