Use test.pl in Deparse.t

I like runperl.  I want runperl.
test.pl:runperl: Allow multiline prog

Split it into multiple -e options for portability.
op.h: Note unstack use of OPf_SPECIAL
[perl #77452] Deparse { ...; BEGIN{} } correctly

8635e3c2 (5.21.6) changed the COP sequence numbers for nested blocks,
such that most BEGIN blocks (incl. ‘use’ statements) and sub declara-
tions end up in the right place.  However, it had the side effect of
causing declarations at the end of the enclosing scope to fall out of
it and appear below.

This commit fixes that by adding an extra nulled COP to the end of the
enclosing scope if that scope ends with a sub, so the final declara-
tion gets deparsed before it.

The frequency of sub declarations at the end of the enclosing scope is
sufficiently low (I’m guessing a bit here) that this slight increase
in run-time memory usage is probably acceptable.

I had to change B::Deparse to deparse nulled COPs the same way it does
live COPs, which means we get more extraneous semicolons than before.
I hope to fix that in a forthcoming commit.  I also ran into a B bug,
in that null ops are not presented to Perl code with the right op
class (see the blessing in the patch).  I plan to fix that in a separ-
ate commit, too.
Remove extraneous semicolons from Deparse output

Prior to the previous commit, it was emitting extra semicolons for
statements optimised away outside of any subroutine, and extra semi-
colons after sub declarations and the end of the enclosing scope.  The
previous commit made it also emit an extra semicolon at the end of the
main program, if the last thing was a sub declaration.  So I decided
to fix all three at once.
Make B use B::COP for nulled COPs

Former COPs still carry information with them, and to get to it I had
to have B::Deparse rebless the op object into B::COP.

This commit makes B use the right class to begin with.  This happens
to make B::Concise output the extra information that nulled COPs carry
around with them, which was on my to-do list anyway, so I’m happy
about that.