Matcher refit

Matcher work so far, including new API