An implementation of lightweight unbounded queues
Add all the main machinery

Add functions size_shared, copy_shared_calculate and copy_shared_perform.
Add the infrastructure for making these communicate with each other.
Add debug information to other places in the VM, to watch interaction
with the sharing-preserving copy.

CAUTION: If you define the SHCOPY_DEBUG macro (after SHCOPY is actually
used in the VM) and make the whole OTP, there will be a lot of debugging
messages during make (it will also be enabled in erlc).  You have been
warned...
Add the BIF size_shared/1 and debug cleanup
Enable shcopy for sending messages
Add machinery to enable SHCOPY dynamically

This commit is just for debugging purposes, will probably be reverted.
It comes with a the erts_debug:copy_shared/1 BIF.  If SHCOPY_DISABLE
is defined, SHCOPY starts disabled and is dynamically enabled the first
time that the BIF is called.
Enable shcopy for spawning processes
Add the stress tests from the EW paper

These are tests for evaluating the performance of the SHCOPY algorithm.

A set of simple programs that create Erlang terms of various sizes that
do not share any subterms and copy them around.
Add the shootout tests from the EW paper

These are tests for evaluating the performance of the SHCOPY algorithm.

Programs created to compare performance across a variety of programming
languages and implementations.  They come from ``The Computer Language
Benchmarks Game'', available from http://shootout.alioth.debian.org/
Add scripts useful in SHCOPY development
Add -debug +vc flag for debuging SHCOPY

This is very verbose, you have been warned.
It should work with the copy-spy.py script, which may be a bit outdated.
Added --enable-sharing-preserving configure flag
Add extra tests for maps
Add support for maps in size_shared
Add support for maps in copy_shared