valgrind: pcretest: Mark data buffer as unaddressable after the end of the data
The data buffer is (usually) bigger than the actual data processed. This patch
explicitly marks the excess buffer as unaddressable, so that running under
valgrind will signal invalid memory accesses to it. This seems a better solution
than memmove'ing the data to the end of the buffer to use the allocated memory
region as the valgrind marker.

pcre32: pcretest: Add -32+ option
Add -32+ option that selects 32-bit mode like -32, but additionally
modifies the characters in the data strings to have the bits > 21 set,
to test that the masking works.

pcre32: pcretest: Don't convert data line to UTF-8 first
While reading the data lines, directly put them into the 8, 16 or
32 bit buffers instead of first converting them into UTF-8 and only
afterwards converting that buffer to 16/32 bit. This is necessary so
the in 32 bit mode the \x{} escapes can use the full 32-bit range
(while the non-standard 5/6 byte UTF-8 sequences can only express
characters up to 31-bits).

pcre32: fullinfo: Add variants of (FIRST|LAST)LITERAL that are 32-bit clean
Since for pcre32 the whole range of the output is already used up
for the character itself, return the special values separately.

pcre32: Add 32-bit library
Create libpcre32 that operates on 32-bit characters (UTF-32).
This turned out to be surprisingly simple after the UTF-16 support
was introduced; mostly just extra ifdefs and adjusting and adding
some tests.

General spring-clean of EBCDIC-related issues in the code, which had decayed
over time. Also the documentation. Added one test that can be run in an ASCII
world to do a little testing of EBCDIC-related things.

Typos in PrepareRelease; include 16-bit in make distcheck; fix RunTest and
RunGrepTest when building in non-source directory; problem in pcretest when no
UTF or 16-bit support; other tidies consequent on building a tarball.

Refactoring to reduce stack usage for possessively quantified subpatterns. Also
fixed a number of bugs related to repeated subpatterns. Some further tidies
consequent on the removal of OP_OPT are also in this patch.

(1) Move internal flags out of the options field, to make room.
(2) \r and \n must be explicit to trigger the special CRLF handline exception.
(3) (?J) at the start now sets JCHANGED as well as DUPNAMES.