Added: closures to private functions can't be saved.

Added a clarification that closures to private functions
can't be saved or restored. (fixes #794).
Added recommendation not to use static.

static should not be used in new code anymore.
Currently we do not foresee disabling static,
but favor should be given to protected (fixes #790).
Ensure only finite floats are saved.

Savefiles with NaN or INF floats can't be restored. Also,
there should never be an svalue with a non-finite float.
If that happens, there is an error in the driver.
Added an assert() checking for isfinite().
Fixed #641 and should make all paranoid people happy. ;-)
strlen() is deprecated, changed manpage.

It should not be used in new code and will be
marked deprecated in a short while.
Removal is planned for 3.5.0.
(bug #798)
Added a testcase for bug #833.

Multiline #if statements can cause the lexer to read
beyond buffer boundaries and thus crash the driver
or cause other errors.
Comparison failed when no type information was available for both operands.

When there is no type information about both operands check_binary_op_types()
took a shortcut and returned error_type, because there is nothing to test.
But on assignment the error_type as NULL and the assignment operation checked
to result type against NULL to throw an additional error.
So check_binary_op_types() must not return NULL for success.
Corrected calculation of closure address from bytecode start address.

In 3d52a41015a3267fbc00fd69d15a39f4ae9c2853 the lambda closure header
was modified so the number of local variables and arguments wasn't
stored in the bytecode anymore. During error messages the determination
of the address of the lambda closure structure did some pointer magic
that wasn't adapted accordingly.
Prevent static types of being put multiple times into the .unions_of list after GC.

After a garbage_collection all references to other types are nulled and
restored afterwards to prevent dangling references. For non-static types
this is done exactly once (because of test_memory_reference(t)).
For static types there is no such safeguard, so they could be handled
several times and thus static union types add themselves several times
into the .unions_of list of their head resulting in a circular list.
Corrected refcounting mistakes with union types and rttc and build a better error message.

Corrected two refcounting mistakes in check_rtt_compatibility_inl
(one forgotten free_lpctype and one free_lpctype called to early).
When determining the full type of an array don't abort on the
first unfitting element. Ignore zeroes in the array as they don't
contribute anything to the resulting type.
Replace strlen by sizeof in mudlib.

In preparation of the planned removal of the efun strlen(), which is
replaced by sizeof(), occurences of strlen() were renamed in the mudlib/
directory. (Thanks to Abathur.)
Added info about limits for read_file/read_bytes.

read_bytes/read_file have a maximum limit for reading
which was not mentioned in the manpages so far.
sefun cat(): added efun:: qualifiers.

Forced calling the real efuns in case a mud has sefuns shadowing
the efuns needed in the cat() implementation. Calling them with
set_this_object() in effect is not possible.