When accessing non-existing properties it is expected behavior to throw an error.
This is the case in all other places.
It is also not reliably possible to determine whether a property exists beforehand.
it is not sufficient to call `property_exists()` as it may be available via `__get()`.
Instead of `property_exists()` or `isset()` it should call `$object->canGetProperty()` but this is not
guaranteed to be implemented and therefor doing such a check will not work in 2.0.x.
calling isset() may break code that works through __get() but has not implemented __isset() properly.
We may discuss this for 2.1 again but I am in favor of keeping it as is.