refactor matching into class methods

drastically simplify instance method impls
class methods lend themselves to testing
acknowledge that return_stderr *is* just an alias