Listener<T> that exposes Func for matcher

Fixes #104. Allows low-level "should this Listener run?" decisions.