phalcon/zephir — pull request #566 by steffengy (2014-10-08 19:59:01+00:00)
Title: Let: Implement setting object properties dynamically with strings

While developing a plugin I had to set properties,
which were not declared for the object,
resulting in a parser/compiler exception.
(which is expected behavior)

While using dynamic properties,
I discovered that things like
setting properties as string directly
```zephir
let this->{"test"} = "value";
```
were not implemented yet.

The attempt to workaround this by
using variable addressing also failed
```zephir
var prop = "test";
let this->{prop} = "value";
```

The final workaround would be:
```zephir
var val = "test";
let this->{prop} = val;
```
which would be too much to write.

These issues are fixed by the following changes,
which didn't seem to break any unit tests, and
also pass the ones I included.