Update README.md with latest information about project's modules and API
Move GeneralizedReplicator interface to c5-modules
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
Move OLogToReplicatorEntryCodec to its own file in c5db-olog
Add a test of ReplicatorEntry decoding
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.
Update class C5DB to use the new constructor parameters for BeaconService
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
Remove println from OLogToReplicatorEntryCodec
Add documentation to ReplicatorEntry