Compiler: Avoid folding constants at all in __INIT().

When constants are folded the semantics for __INIT()
changes, and can break code (like eg variables in Hilfe).

Fixes several testsuite failures for Hilfe.
Compiler: More __INIT() related fixes.

Avoid calling __INIT() when it is just a prototype.
Compiler: Fixed __INIT() prototype detection.

The __INIT() prototype detection in the decode_value() case
was off by one in the previous commit. With this fix all of
the known issues introduced by the __INIT() changes seem to
be fixed.
Compiler: Keep assignments with UNDEFINED in __INIT().
ADT.Struct: working int32 / SWord
Crypto.CAMELLIA: Added some minimal doc.
Git: Improved documentation.

Also adds support for using the default git directory.
Configure: Added detection of liburcu.
files is moved to _Stdio
Removed traces of the crypto export restrictions.
By default, require >=128 bit ciphers.
Simplified some debug.
block_allocator: added support for alignment
uninitialized memory access
decode: check range of function identifier
initialize pike_frame->num_args even in special cases
BSON: fixed missing reference
interpreter: use valgrind mempool macros for pike frame allocator
avoid out of bounds access
added fallbacks for valgrind mempool macros