use balanced kvo calls on messages view controller