fix($parse): allow assignment on objects in locals

Fixes #4664 

I saw this issue on the 1.4 list but the fix seems simple...
Because we are specifically assigning to a property on the object `o` which was already fetched from the scope/locals.  For example with `(object).b = 1`... `(object)` is evaluated using scope+locals, but the `.b = 1` should only be evaluated on the object returned from `(object)`.