Begin generlization to a plugable framework.

- Add interfaces for Connections and Translators
- Add abstract class for Applications, implements Connection and
  Translator.
- Write test application PlainSocket to mimic the initial test
  bridge behavior.