Reimplement with plugable structure.

- Restructure to use a plugable application structure.
- Create test PlainSocket application and RunBridge.
Remove Observer/Observable mess.

- Write bridge to directly route messages to the appropriate app
  based on message sender. Uses HashMap and assumes only two apps.

- Remove usage of Observer and Observable.

- Add MessgeHandler interface. Any class that will receive messages
  from the bridge must implement this interface.

- Comment placeholder code for the future gui.