Added the ability to change the logging implementation.