First working version with limited capabilities to access objects via string notation.

Currently supported access methods:
- simple property access (e.g. "Person.FirstName",
"Person.FirstName.Length")
- indexers (e.g. "Person.Children[0]", "Person.PhoneNumber["Home"]")
- arrays by index
- chars of a string by index (e.g. "Peson.FirstName[2]")