Merge pull request #53 from lameiro/master

Uses module name when generating IR, for improved readability.
Release llvm_patches and libunwind_patches into the public domain so they can be incorporated into the upstream projects and their users
Add clang-format rules and makefile targets

Will commit the result in the next changeset.

Also, had to update to a newer version of LLVM to get some new clang-format options.
We don't necessarily have to use the same version of clang-format as the version of
llvm that we build it against, but if we can it keeps the build system simpler.
Run clang-format ("make format") on the codebase

Changed the indentation of pretty much the entire codebase.

It did some things that I don't like that seem not configurable,
but overall it seems like an improvement, and nice to have a
canonical format going forward.
Add some notes about formatting
Add missing include, and make GCC happy
Exceptions part #1: misc support changes
Exceptions part #2: AST and CFG support
Exceptions part #3: irgen
Exceptions part #4: runtime support

There's still vestiges of the libunwind experiment; I'm leaving those in even
though they're dead since I think we should move soon back to that approach.