Initial checkin
Experimental DSL for building loggers
Allow setting logger attributes in the builder.
Split the builder into separate classes for clarity.
Merge branch 'builder_dsl'