Move initialization and shutdown to exported functions.

Add a 'shuttle' class that encapsulates all the 'bits' that need to be created to run a log-shuttle instance.
Refactor config.go

Aiming to make the configuration parsing less dependent on command-line flags to allow external consumers to provide their own configuration without using command-line flags.
Compute config header on init, update tests.
Provide CONST defaults, add Launch() to Shuttle.
Separate shuttle construction from Launch().
Merge pull request #30 from trestletech/feature/constructor

Make Config less dependent on command-line flags, reduce boilerplate