Merge branch 'features/protocol_improvements_and_server_client_improvements' into features/statefile_prune_reliable_offsets
Experimental work with Prospector->Registrar communication regarding filenames so .logstash-forwarder contains correct filenames (extremely important for Windows resume) and deleted files are removed from it when harvesting stops
Merge branch 'driskell' into features/statefile_prune_reliable_offsets
Combine prospector into single thread to prevent same file defined in multiple paths harvesting multiple times - registrar can only save single entry; this removes prospector sync at start and allows prospector to signal removal of unrequired states.
Harvester returns offset as it stops, which prospector captures
Gofmt
Fix event channel offset calculations. Various code improvements and additional error handling.
Merge branch 'features/statefile_prune_reliable_offsets' into driskell_master
Codec restructuring
Improve error reporting on harvester stat/read errors
Improve offset handling of stopped harvesters when using multiline codec