Matchers

Added matcher syntax

Note that this PR depends on, and includes, the commit for PR #30. If this PR is accepted before #30, then #30 can simply be closed.