Implementation of dict comprehension

Signed-off-by: Vinzenz Feenstra <evilissimo@gmail.com>
Refactored dict and list comprehension remapping

Signed-off-by: Vinzenz Feenstra <evilissimo@gmail.com>
Added dict comprehension tests

Signed-off-by: Vinzenz Feenstra <evilissimo@gmail.com>
Ensured same output for dictcomp.py test case

Signed-off-by: Vinzenz Feenstra <evilissimo@gmail.com>
Merge pull request #65 from vinzenz/dict-comprehension

Implementation of dict comprehension
Add (modified) spectral_norm millibenchmark from the language shootout.
Implement zip2
Implement tuple hashing
Merge pull request #67 from undingen/tuple_hash

Implement tuple hashing
Merge pull request #66 from undingen/spectral_norm

Add (modified) spectral_norm millibenchmark from the language shootout.
Come up with a standardized include order, add it to the tester, and fix all the existing files
Separate linting features from the tester, and add the google linter for testing
Run 'make format'
Let the attributes live at various offsets in an object.

Similar to the location of the dict attribute in CPython,
the 'hc attrs list' in Pyston will end up being located at
different offsets, depending on the class that's being subclassed
from.

This commit removes the HCBox class, which assumes that it always lives
at the same offset and so can be statically described with a C++ class,
and instead uses a runtime lookup.

This should hopefully make things a fair bit closer to supporting inheritance.
I guess setattr has been completely moved to the Rewriter2
Basic inheritance functionality

Python inheritance is remarkably complicated... this commit implements the basics.
There are still a fair number of things that are unimplemented, and some things
like inheriting from all the basic types haven't been added yet.
Fix bug if you try to call something not callable
Make some things forwards-compatible with newer LLVM revisions
Basic traceback support

If you throw an unhandled exception, you'll see a traceback
from the top-level handler.  Doesn't enable us to run any additional
programs, since this functionality isn't available to Python-level code,
but hopefully should make debugging easier.
Clean up tracebacks, and enable tracebacks for interpreted code
Run 'make format'

I think the new version of LLVM changed clang-format, and
it reformatted parts of the Pyston codebase.
Maybe we should pin the rev for clang-format?