Actually, IMO, given that we don't intend `output` to be used on its own w/o `to_xyz` being chained off of it, we should make `matches?` raise an error if they didn't call one of the `to_` methods.

This is similar to `be_within`:

https://github.com/rspec/rspec-expectations/blob/79ac9aabe938a25a918c07077cfb9fe1ba222923/lib/rspec/matchers/built_in/be_within.rb#L13

`expect(x).to be_within(0.1)` will raise an error because you didn't chain `of` off of it.