Rework be_within specs.

The old specs were incomplete and were poorly
expressed (focusing on internal APIs like #matches?),
rather than focusing just on the way end users use
the matcher.