Added support for timbre logging
Converted to use protocols