Better listener setup

I have updated the listener's setup to be more universal such that anyone who implements the listener interface can subscribe to be notified when the time is setup. Your implementation is good, but it limits the usage. The proposed implementation is much more flexible with one caveat that it does not enforce any one to implement the listener interface but this should not be a problem as you obviously have to receive the event somewhere and it would be easier to figure out that something is missing.

I only used the time picker, so I only changed it. If you like it, I can help you copy this implementation to other components.

Cheers,
Max.