Add a GeneralizedReplicationService interface
Add getContentType to OLogEntry, for use by later codecs that want to ignore e.g. quorum configuration entries
Move EntryEncodingUtil to c5db-util module
Move SequentialEntryCodec into c5-modules module, c5db.interfaces.log package.
Generalize OLogReader to accept other kinds of SequentialEntryCodec
Add toString, equals, and hashCode to ReplicatorEntry
Add documentation to ReplicatorEntry
Move OLogToReplicatorEntryCodec to its own file in c5db-olog
Remove extraneous println from OLogToReplicatorEntryCodec
Add a test of ReplicatorEntry decoding
Extend timeout for circle jobs
Add a getAvailableModulePorts method to ModuleServer, and implement it in all implementations; also, deprecate getModules (because it is synchronous and there is an async alternative)
Change BeaconService to handle its own Fiber management, and to interact with the module port assignments on the fiber only.
Rename StandaloneReplicatorTest to C5GeneralizedReplicationServiceTest to agree with the class being tested
Remove redundant test method from C5GeneralizedReplicationServiceTest
Fix that C5GeneralizedReplicationService was not starting the replicator it created
Greatly reduce the responsibilities of class C5GeneralizedReplicationService, rendering it only the minimum necessary adapter to correctly implement interface GeneralizedReplicationService, and having all dependent modules created and handled externally. Change the test code (back) to handle this.
Implement a new method on GeneralizedReplicator, isAvailableFuture(), by which users can be notified that the replicator is ready for use; test now passes
Repair BasicTableCreationTest, which was failing because its assumptions about the methods invoked against the mocked Replicator were incorrect
Add an additional required expectation to the mocked Replicator in OLogShimTest