Requiring the Logger be passed in to each of the structs was causing
Panics if the Logger was omitted.
* Add function for overriding the default logger
* Remove panics caused by initialization
To allow for different logging endpoints we'll introduce a Logger
interface that will be passed into the pipeline during initialization.
* Add Logger interface
* Use logger interface in pipeline and emitters