add chained expectation descriptions to the default descriptions of custom matchers with fluent interfaces

this fixes #532
As I commented below, I think `and_smaller_than` is a better name for this than `but_smaller_than`.