Remove init() in MultiUserChat

and mark more members 'final'

Also use CopyOnWriteArraySet for presenceInterceptors.
Replace PacketInterceptor with PacketListener

both serve the same purpose: As callback for Packets. There is no need
to have both, so remace PacketInterceptor and let PacketListener take
its place. Some classes like ChatStateManager can now use
MessageListener as interceptor callback, which is more convenient.
Use PacketTypeFilter.PRESENCE in EntityCapsManager
Improve MUC Presence interceptors

Use PresenceListener as intercepting callback interface.

Remove the for-each loops in MultiUserChat by using the interception
facilities of the XMPPConnection.

Add ToFilter.