move common functionality into message_logger mixin
rename two classes
commit missing files
update readme