Parrot Embed Grant Update #5 : Zen Pebbles

I am still on the path of increasing
test coverage in
src/extend_vtable.c. It is much like a zen study, where you methodically concentrate on
many tiny little pebbles, one at a time, moving them in the sand, to just the right place.
According to the latest code coverage statistics, we are now at 72% code coverage, which is an increase of about 8% since my last report.

Many, many more tests involving
Key PMCs were added. For an intro to what
they are, take a look at my previous grant update. Many of the tests are clusters of related tests,
because most VTABLEs have many similar forms which take integer, string or PMC-flavored keys. I ran into some platform-specific
bugs which only manifest on Darwin machines, which were reported by Jim Keenan in TT# 2098
and which I then fixed by querying with a non-empty Key, which is more prudent.

I also ran into some actual bugs which I reported as Trac Tickets. First is that the cmp_pmc VTABLE does
not seem to be working correctly from extend_vtable, which was reported in TT #2103.
Then I fell into a "hole" in the VTABLE API, where ResizablePMCArray does not respond to defined_keyed(), which it should. This is described
in TT #2094.

In retrospect, this was one of the most productive periods of my grant work. I estimate that I will be very close to the 95% milestone by my next grant
update at this pace, which is very exciting.