Fixes related to mutl-domain deployments

Now the external-domain-checker returns a list of local domains that can be reused between calls of ChannelManager.isLocalDomain(), ChannelManager.isLocalJid() or ChannelManager.isLocalNode(). 
It drastically improves the perfomance of disco#items, purging remote cache, etc,... and allows for a selective query of local nodes.

Since HSQLDB is not fully compliant with postgres, I had to Mockito.spy the SQL connection object in the tests in order to replace **~** with **regexp_matches**.
Well spotted. I'm writing these. The firehose should only return the items of 'local' node if the requesting jid is in the same domain as this node, right?