Refactored the "find appropiate class" part a bit
Mail checkers

Mail checkers are not separate modules anymore; there is only one
mail checker module (called mail) that can make use of various backends
, which were formerly modules on their own.

This greatly simplifies code and reduces redundance.

This commit only contains the base classes for this.
Ported notmuchmail (needs testing)
Thunderbird
IMAP mailchecker
Renamed IMAP mail checker to … imap