Avoid caching non-owned records
Avoid caching non-owned records

Caching records which are not owned is dangerous business, because the
target record might be destroyed even if our proxy is still alive.
When GLib allocator reuses memory address of already freed record for
record of another type, lgi assigns incorrect cached proxy object for
that record.

This patch avoids caching unowned records, completely avoiding
scenario mentioned above.

zevv/lgi,pavouk/lgi,psychon/lgi