Improve support for custom executors in listeners

First stab at fixing http://code.google.com/p/bitcoinj/issues/detail?id=567

This PR does not remove the isRelevantTransaction since an alternative method of signaling which transactions are insteresting should be provided. If you want I can add that as a different commit, but I would like input on what the alternative mechanism should work (`Set<Sha256Hash> getRelevantTransactions()`?).