CXX-265 Configure logging through startup options

A few comments/questions:

-For cleanup of appenders, there's a clearAppenders() function, and this will actually delete the appenders.  Though it seems clear that when you attach the appender you hand ownership of it over to the log domain, users using these options won't see that call, and I wonder if they'd be surprised by this behavior.  Also, since we're not using the appender handles at all, or allowing the user to use them, I wasn't sure how important it was to call clearAppenders() at all.

-Where should configureLoggingOptions() live?  Options.cpp seems like an ok option, but I think there's probably a better fit.  If I add a cleanup function that should probably live in the same place.

-Should there be a way to configure, through options, specific minimum logged severity levels for different logging domains?  If you were doing it manually, you'd be able to set it by component.
You don't actually need to declare this dtor, since it is trivial. It is a good idea to get conservative about declaring lifecycle methods. In this case it makes no difference since you will def. have a vdtor because your base class has one.

But in other classes, declaring unneeded lifecycle methods can cause the compiler to decide not to emit other, potentially valuable, lifecycle members like move constructors.