Major refactor.  Using RxJava as the async coordinator

Need to refactor stages to use intermediate observables for network i/o operations.

Need to fix compilation errors in unit tests
Fixed test name
Cleaned up code and added write unit test
Refactored to use Theories for invalid input testing on all concrete tests
Cleanup of tests and package structure.  Theories working as intended
Added more tests for stages
Added tests for all stages.
Fixes tests and re-configured all input validation
Merge branch 'rxjava' into two-dot-o

Conflicts:
	stack/corepersistence/collection/src/main/java/org/apache/usergrid/persistence/collection/util/EntityUtils.java