Wrap typeof(object)

Wrap typeof(object) in order to allow view models to return other view models of unknown type. This is actually quite common scenario in GUI where single window area can serve many different purposes.

Perhaps this could be decided dynamically in the future. It's much better to look at the actual type of returned object rather than relying on property definition. For now, I have just removed the restriction on typeof(object).