recover named messages which are lost with no handler

The current source code will drop messages which are named, but do not have a name-specific handler installed.  This means that unexpected (but named) messages will be missed, and also prevents the registration of an 'else' or 'fallback' handler.

I propose that either source.message handlers receive all messages which do not have a name-specific handler registered - or - they receive all messages globally, and the name specific handlers are then called an additional time for each match.

The patch here implements the former.