Port from log4j to slf4j for interchangeable logging

SLF4J (http://www.slf4j.org/) allows us to swap out the logging backend.  It's probably better not to require everyone who uses this library to use the log4j when we can easily provide flexibility.