added custom matchers and reduced rubocop offenses

Please don't increment the version. That is done at release time, and a specific release may have multiple changes.