Remove topology representations based on Exchange and associated classes.
Merge commit '35f928541ac5959f0060a2ed836099fbdf02d2c0' into feature/330GtsRefactor

# By Ken Baltrinic
# Via Ken Baltrinic
* commit '35f928541ac5959f0060a2ed836099fbdf02d2c0': (28 commits)
  Fixes config for Anubis integration test.
  Misc code cleanup.
  Refactored .net block-until-subscribe-starts to mirror java approach.
  Introduced an IConnectionManager  interface to maintain proper abstraction.
  Code updates to ensure that Listener will not attempt to restart if it never started or is stopped.
  Adds logic to stop a reconnect attempts if ConnectionMnaager is disposed while reconnecting.
  Improved thread handling to eliminate possible race conditions and deadlocks.
  Adds connection reconnect logic to Java code and covering tests.
  Implements RabbitListener channel restart logic in Java.
  Removes existing Java connection management logic to make way for implementing the approach now used in .Net.
  Adds an initial basic connection management test for Java.
  Adds missing test scope qualification to mockito dependency.
  Renamed IRabbitChannelFactory to IRabbitConnectionFactory to match changes in last commit and bring java and .net code into alignment on this.  Also renames all implementations as well and makes related context config changes.
  Introduced basic ConnectionManager as basis for later refactoring java re-connection logic.
  Fixes some bugs with closing connections upon disposal of transport.
  Adds logic to restart connection upon connection failure.
  Improvements to logging.
  Drying out test code.
  Adds logic to restart listener if the channel fails.
  Moved thread handling for RabbitListner into the Listener itself.
  ...
(Broken)-  Remove compile errors from previous deletions.
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
Along the way we don't expect the code to work until we near completion...
(Broken)-  Add new Exchange Objects
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
Along the way we don't expect the code to work until we near completion...
(Broken)-  Routing Changes (e.g. RouteInfo --> Producing & Consuming Routes, and Exchange --> Queue, Exchange & Broker)
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
Along the way we don't expect the code to work until we near completion...
(Broken)-  More Routing Changes -- continuing to replace the exchanges with the ConusmingRoutes & ProducingRoutes
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
(Broken)- Adapted Message Routing (combination of Rich & Ken's changes) to use ConnectionManagers to multiple brokers/channels.
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
(Broken)- Added documentation John added on other branch, and cleaned up some of the test code.
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
(Broken)-More cleanup -- removing a file no longer necessary and replacing use of it with GsonSerializer.
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
(Broken)-[should have been part of last commit] More cleanup -- removing a file no longer necessary and replacing use of it with GsonSerializer.
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
(Broken)- Apply changes to the Topology Builder & SimpleTopologyService & FallbackRoutingInfoProvider
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
Update the (Broken- Code will compile w/o error soon)- Update Global Topology Service & Builder
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
(Broken - Now Compiles w/o errors)- Finish changes to tests & some minor cleanup
Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
Remove unused imports
Merge commit '1ff8b001bb86752264669801c53b13ff53ff3a24' into feature/330GtsRefactor

# By Ken Baltrinic
# Via Ken Baltrinic
* commit '1ff8b001bb86752264669801c53b13ff53ff3a24':
  Fixes case issue where filename case did not match class case.  Problem was introduced in commit e30c136aec1562b29c6168b75f5e727895892e38.  Appears git does not automatically pick up on case-only changes to file names.
  Removed port as a constructor argument from BasicAuthHttpClientProvider.
  Removed port as a constructor argument from SslHttpClientProvider.
  Making changes in Java to match those in made in .Net in commit 94e58df5520abc219e2f1aa4bed104068cbed13d.  Essentially checking to see if connections and channels are still open before trying to close them.  Avoids some needless entries in the error logs.
  Temporary fix for streaming integration tests.  They pass now but streaming is still on life support, See AMP-109.
  Just fixing some incorrect code indentation.
  Improvements to code to capture some unhandled errors and avoid some others that occur when shutting down the bus.
  AMP-82 Implementes one-way-ssl connection to rabbit integration test separate from the two-way-ssl connection test. Also fixes the basic auth scenario test that was incorrectly using ssl.
  Fixes configuration issue that was keeping basic auth connection scenario test from working.
  AMP-83 Updates java configuration files to use one-way-ssl to connect to rabbit instead of two-way-ssl.
  Refactored SslConnectionFactory to use CertificateConnectionFactory's keystone loading logic.  (Its own was not working).
  Removed unused import statements.
  Modifies SSLConnectionFactory to be SslConnectionFactory to follow correct naming convetion.  Also modifies constructor args to match those used on CertificateConnectionFactory SslClientProvider, etc.
  AMP-83 Converts .net examples to use one-way-ssl connection factory to connect to rabbit.
  Fixes incorrect references to test client certificate in .net examples iIntroduced in commit d45c6feedfced91e059b54d090893b7afcc20a71.
  APM-81  Implements a one-way-SSL rabbit connection factory for .net.
  Addresses AMP-107.  Moves EnvelopConstants from CMF cmf.bus into AMPere amp.messaging.  See related commit d29d03c2b827d269efc4ef07b9f60f15af4462e8 in CMF.
  Additional changes needed as a consequence of the move from IRabbitChannelFactory to IRabbitConnetionFactory (see 5787a7bef48cf692c9ca3508a5066e0c2ad7ffe6) in order to get integration tests to pass, etc.

Conflicts:
	java/amp-rabbit/src/main/java/amp/rabbit/connection/TokenConnectionFactory.java
	java/amp-rabbit/src/main/java/amp/rabbit/dispatch/RabbitListener.java
	java/amp-rabbit/src/main/java/amp/rabbit/topology/SimpleTopologyService.java
Fix merge -- merged this file incorrectly.
Fix missing import.
Merge branch 'feature/330GtsRefactor' of github.com:Berico-Technologies/AMP into feature/330GtsRefactor

# By Justin (15) and Ken Baltrinic (3)
# Via Ken Baltrinic
* 'feature/330GtsRefactor' of github.com:Berico-Technologies/AMP:
  Adding some refactoring notes/TODOs.
  Change needed to get things to build.
  Fixes an apparent logic flaw in how exchanges and queues are declared.
  Fix missing import.
  Fix merge -- merged this file incorrectly.
  Remove unused imports
  (Broken - Now Compiles w/o errors)- Finish changes to tests & some minor cleanup Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  Update the (Broken- Code will compile w/o error soon)- Update Global Topology Service & Builder Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)- Apply changes to the Topology Builder & SimpleTopologyService & FallbackRoutingInfoProvider Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)-[should have been part of last commit] More cleanup -- removing a file no longer necessary and replacing use of it with GsonSerializer. Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)-More cleanup -- removing a file no longer necessary and replacing use of it with GsonSerializer. Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)- Added documentation John added on other branch, and cleaned up some of the test code. Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)- Adapted Message Routing (combination of Rich & Ken's changes) to use ConnectionManagers to multiple brokers/channels. Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)-  More Routing Changes -- continuing to replace the exchanges with the ConusmingRoutes & ProducingRoutes Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…)
  (Broken)-  Routing Changes (e.g. RouteInfo --> Producing & Consuming Routes, and Exchange --> Queue, Exchange & Broker) Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…) Along the way we don't expect the code to work until we near completion...
  (Broken)-  Add new Exchange Objects Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…) Along the way we don't expect the code to work until we near completion...
  (Broken)-  Remove compile errors from previous deletions. Part of the GTS Refactor:  (Breaking apart the Exchange into the Exchange, Queue and Broker objects and more…) Along the way we don't expect the code to work until we near completion...
  Remove topology representations based on Exchange and associated classes.

Conflicts:
	java/amp-rabbit/src/main/java/amp/rabbit/connection/BaseConnectionFactory.java
	java/amp-rabbit/src/main/java/amp/rabbit/dispatch/RabbitListener.java
	java/amp-rabbit/src/main/java/amp/rabbit/topology/SimpleTopologyService.java