MOTECH-620: Migrate Schedule Tracking to MDS

This commit moves the persistence source from CouchDB
to Motech Data Services for the Schedule tracking module.
Some refactoring was necessary to make it possible.

Change-Id: If7957d1f098a25c4d951be4ba12fd20d7046750d
MA-35 MOTECH Pubsubhubbub implementation - Hub module

This is a merge of the dev/hub branch.

This commit:
* Adds the motech-platform-hub module
* Adds http-agent module required by the hub module (MA-340)
* Adds support for executeSyncWithReturnType to return the response value
* Adds support for retryCount and retryInterval added for executeSyncWithReturnType in http-agent
* Adds support for GET method in http-agent

Functional and Technical documentation for hub module: https://docs.google.com/document/d/1nk8roTHc6jN_cjcrOLAXaI_rvr36RYxdl0PULKozdiQ/edit?usp=sharing
Test case documentation for hub module: https://docs.google.com/spreadsheets/d/15mNTBoR2Vdao-tP8Mg1s30LFMMuj3_iU9qccBe6dcVo/edit?usp=sharing

Change-Id: Id856ba7d2bbfee9c2e00f8dce0f935af38c013ac
MA-35: MOTECH Pubsubhubbub implementation - hub module

This is a merge of the dev/hub branch with code review changes

This commit:
* Adds the motech-platform-hub module
* Adds http-agent module required by the hub module (MA-340)
* Adds support for executeSyncWithReturnType to return the response value
* Adds support for retryCount and retryInterval added for executeSyncWithReturnType in http-agent
* Adds support for GET method in http-agent

Functional and Technical documentation for hub module: https://docs.google.com/document/d/1nk8roTHc6jN_cjcrOLAXaI_rvr36RYxdl0PULKozdiQ/edit?usp=sharing
Test case documentation for hub module: https://docs.google.com/spreadsheets/d/15mNTBoR2Vdao-tP8Mg1s30LFMMuj3_iU9qccBe6dcVo/edit?usp=sharing

Change-Id: Id856ba7d2bbfee9c2e00f8dce0f935af38c013ac
Merge branch 'master' into dev/hub

Conflicts:
	hub/pom.xml
	hub/src/main/java/org/motechproject/hub/exception/HubException.java
	hub/src/main/java/org/motechproject/hub/mds/HubDistributionContent.java
	hub/src/main/java/org/motechproject/hub/mds/HubDistributionStatus.java
	hub/src/main/java/org/motechproject/hub/mds/HubPublisherTransaction.java
	hub/src/main/java/org/motechproject/hub/mds/HubSubscriberTransaction.java
	hub/src/main/java/org/motechproject/hub/mds/HubSubscription.java
	hub/src/main/java/org/motechproject/hub/mds/HubSubscriptionStatus.java
	hub/src/main/java/org/motechproject/hub/mds/HubTopic.java
	hub/src/main/java/org/motechproject/hub/service/impl/ContentDistributionServiceImpl.java
	hub/src/main/java/org/motechproject/hub/service/impl/DistributionServiceDelegateImpl.java
	hub/src/main/java/org/motechproject/hub/util/HubConstants.java
	hub/src/main/java/org/motechproject/hub/util/HubUtils.java
	hub/src/main/java/org/motechproject/hub/web/HubController.java
	hub/src/main/resources/META-INF/motech/applicationHub.xml
	hub/src/main/resources/META-INF/spring/blueprint.xml
	hub/src/main/resources/application.properties
	hub/src/main/resources/log4j.xml
	hub/src/test/java/org/motechproject/hub/service/impl/DistributionServiceDelegateImplTest.java
	hub/src/test/java/org/motechproject/hub/web/HubControllerTest.java
	pom.xml

Change-Id: Ib61a69209b0f29b9d7321dd522e7490f3029cc63