Merge pull request #25 from stopiccot/futures

A bunch of linux fixes.
Adding lib for c++ abi and unwind

libc++ is basically workable only for LTO and no exception at present.
So add compiling options: -stdlib=libc++ -flto
Sample 03 and 04 passed in LTO mode.

There are kinds of combination to build libc++.
But libc++-3.3 + libsupc++-4.2 + libgcc_eh-4.2 is the one look promising.

Two apparent issues left:
Exception is not done, both in lib and backend.
Alias ctor and dtor is not correctly generated.
Remove duplicate definitions of libc++ and disable ctor dtor alias
Make libc++ default linking and fix a ctor missing bug in libsupc++
Replace unwind.h with previous one or libthr compiling breaks
Kinds of fixings. Swig re-enabling.
Minor fix for libAS3++
Fixed a llvm link error in cygwin
Typo in Makefile.
Expand atomic load to cmp_swp.

LLVM fakes atomic load and store with compare-swap which continues
with original MemoryVT. However, the MemVT should accord with newly
promoted type of arguments. Look like a llvm bug.
Minor fix on making dmg
Update README.md
Update README.md and add overview_of_compiler_stages.md