First attempt at observer class