object: Support fields defined in ancestor classes

We define a JS property with getter and setter for a GObject field in
resolve_impl() (where lazy properties are defined) when JS code tries to
access a field. The getter and setter retrieve the field's GIFieldInfo
information from a cache, using a key that is built into the getter and
setter.

Because this is done during the resolve operation, and the resolve
operation can occur multiple times going up the prototype chain, the JS
property may end up on a prototype that is an ancestor of the object's
direct prototype. So the GIFieldInfo may end up on any prototype in the
prototype chain, and so we have to search through the prototype chain
for it.

Closes: #223.
27 jobs for <span class="ref-name">223-fix-widget-field-crash</span> in 12 minutes and 25 seconds (queued for 3 seconds)
Status Job ID Name Coverage
  Source Check
passed #212085
cppcheck

00:02:35

passed #212086
cpplint

00:02:51

passed #212087
eslint

00:02:40

passed #212084
fedora

00:04:16

 
  Test
passed #212091
no_graphics

00:02:06

passed #212092
no_profiler

00:03:06

passed #212093
no_readline

00:03:06

passed #215113
sanitizer_gcc

00:04:54

passed #212089
with_logging

00:03:14

passed #212090
with_systemtap

00:03:06

canceled #212088
sanitizer_gcc

00:04:34

 
  Manual
manual #212107
allowed to fail manual
armv8
manual #212094
allowed to fail manual
codequality
manual #212095
allowed to fail manual
code_statistics
manual #212109
allowed to fail manual
coverage
manual #212097
allowed to fail manual
fedora_gcc
manual #212103
allowed to fail manual
flatpak
manual #212098
allowed to fail manual
installed_tests
manual #212101
allowed to fail manual
lts
manual #212108
allowed to fail manual
ppc64le
manual #212096
allowed to fail manual
sanitizer_clang
manual #212100
allowed to fail manual
ubuntu_clang
manual #212099
allowed to fail manual
ubuntu_gcc
manual #212102
allowed to fail manual
valgrind
manual #212106
allowed to fail manual
zeal_11
manual #212104
allowed to fail manual
zeal_2
manual #212105
allowed to fail manual
zeal_4