fix(expression): expr with [] are now assignable

Expressions like `foo[bar]` were considered as non assignable.
Fix now turn assignable all of these examples

`foo[bar]`
`foo.bar[baz]`
`foo[bar].baz`

Fixes #266
Closes #267