POC of lazy-loading of ghost objects implemented only via properties existence

Basically a PoC implementation of #159.

Works with minimal code changes, but fatals have to be handled correctly.
Fair point. I'll consider converting it to a `GhostObjectContext` or such