The AbstractType::__get and AbstractType::__set do not allow static analysis for cases where they are used. I'd like to deprecate them and replace them with explicit get and set methods together with explicitly-typed getAsString, setAsBoolean etc. methods.
@mjaschen What do you think?