Seperating Logging Mechanisms - attempt Two

Sorry if this particular commit seems so out of context, but the code
was looking really messy and I was not able to make any further changes
while worrying about it.