observer class modification
added files
added new functions and tests