added logger class and implemented core class functionalities