votes follow observer pattern now too.