Stop ｍｙ　Ｃｌａｓｓ + ｓｕｂ　ＦＩＥＬＤＳ + hash lookup from crashing

‘sub FIELDS’ cheats by not vivifying the *FIELDS glob.  The code that
checks whether hash keys are valid assumes that the FIELDS entry in a
stash is a GV, which it is not in this case, so it crashes.
Make ‘No such field’ error apply to 1-elem slices

e75d1f10 added ‘No such class field’.  It has never worked for single-
element slices.
op.c: Apply shared hash key optimisation to slices
perlhacktips: Fix verbatim line

Shorten this long verbatim line by removing the pod markup (which would
be rendered literally), changing the indent to 4 (to match the ‘make
foo.i’ further down) and removing the trailing space
Make ‘No such class’ apply to ${$ref}{key}, too

$ perl -le 'use fields "foo"; my main $r; $r->{bar}'
No such class field "bar" in variable $r of type main at -e line 1.
$ perl -le 'use fields "foo"; my main $r; $$r{bar}'
No such class field "bar" in variable $r of type main at -e line 1.
$ perl -le 'use fields "foo"; my main $r; ${$r}{bar}'
$

Notice how the last one is silent.  There is already code to handle
the block for hash slices, so we can copy that.
op.c: Combine common code for hash keys and slices