Add support for firing changes at object level - fixes #5