sounds reasonable, but I think ```BaseMatcher``` should reference ```description_when_negated``` in ``` def description``` documentation. 
so it would be clear when subclassing ```BaseMatcher```