renaming and moving to observer package