finish up logger class and add tests