IOBuffer: Fixed string leak.

Also fixes some potential related leaks.
Revert "Store new malloced value instead."

This reverts commit a9693064380ac62005cdd28f22b447902644a72f.

As mentioned in [LysLysKOM 20949405] (which probably hasn't been
exported correctly to the mailinglist yet):

The old code looks correct to me.

  * Restore s->s->len to the value it had when s->s was allocated
    (aka s->malloced).

  * Reallocate s->s with the new (now known) final length.

The question does however arise whether the code is correct on
realloc failure.
Allow the mapping of variables from inside structures added using CVAR.

This is done by simply writing the name of the structure followed by
"." and then the member name.

Bumped PRECOMPILE_API_VERSION by one.

This shows a somewhat irritating shortcomong of api_version, however:
 This kind of variables are supported even when cpp prefix support is
 not.
Moved some common code to functions.

Also use the new "map variable from structures" support to remove
two getters.
Added a few read_int<size>() functions for common int sizes.
Gmp: Fix compilation issue with the new precompiler.

The DEFAULT_CMOD_STORAGE macro defaults to "static" with
the new precompiler, but in Gmp eg the *_program constants
are cross-referenced between different cmod files, and so
must not be declared static.
Build: More precompiler DEFAULT_CMOD_STORAGE fixes.

Some symbols that need to not be static:

  backend.cmod:Backend_program
  builin.cmod:f_backtrace()
  iterators.cmod: f_get_iterator()

Some symbols that were forward declared:

  post_modules/Nettle/cipher.cmod:f_Nettle_DES3_fix_parity()
  post_modules/Shuffler/shuffler.cmod:Shuffler_program
precompile: new nonstatic flag
Revert "precompile: new nonstatic flag"

That sort of breaks with older precompiles...

This reverts commit f7f9f93cb2ea4d1ba6cd429eb111844b54a347d9.
IOBuffer: Use ptrdiff_t instead of ssize_t.

ptrdiff_t is C89, while ssize_t is POSIX. As we support some
non-POSIX architectures, use the more portable type.