Add dynamic bridge module system

Add: A dynamic system for adding retrievable modules to bridges. All the existing static modules and extensions will be ported to the new system soon.
Move AbstractBridgeConnector to .basic

Add: Move the AbstractBridgeConnector base class into the .basic package.
Make bridge connector list more consistent

Add: If an error occures while a bridge connector is added to or removed from a bridge, the bridge keeps the connector list consistent and definitely removes the connector.
Fix AbstractBridgeConnectorTest location

Fix: Move AbstractBridgeConnectorTest into the .basic test package.
Add tests for bridge connector list consistency

Add: Two unit tests for testing the new bridge connector list consistency feature.
Add public parent access and consistency checks to the bridge module system

Add: Every bridge module has to make its current parent bridge publicly accessible.
Add: The AbstractBridgeModule base class takes care of keeping bridge module instances consistent (they can be only used once etc.).
Add: Javadoc to the BridgeModule interface.
Replace old plain sender/handler modules with bridge modules

Add: The old sender/handler modules are bridge modules. The old getters in the bridge object are no longer required.
Add: Move the event handler storage to the HandlerModule.
Transform SendPredicateCheckExtension into bridge module

Add: The SendPredicateCheckExtension is a bridge module.
Add: The default implementation DefaultSendPredicateCheckExtension (since the SendPredicateCheckExtension is just an interface, a default implementation is required).