Fix embedding of constant ints

Allow 64-bit constants.  not sure how we didn't run into this before
Separate the CompilerType objects from the class definitions

Most code wants to have access to the basic types (INT, STR, etc)
but doesn't need to know anything about what methods they support.

Move the commonly-accessed parts of compvars.h into the always-included
core/types.h, and remove almost all of the includes of compvars.h
Add some extra error checking during irgen
Add some more patchpoint-related llvm patches
Add the ability to represent bools as non-i1

Turned off for now; will need this for a later patch.
Change how we create and represent patchpoints
Change some of the low-level initialization of patchpoints

Will make it easier to initialize non-ic patchpoints that
are coming up.
Support frame introspection

The approach in this changeset is to attach frame args
to every call site via stackmap args.  We make sure that
every callsite is a patchpoint, and serialize the symbol
table into its arguments.

In this patch, that is just used for supporting the locals()
method.

It's currently disabled since it has a hugely negative impact
on performance (LLVM takes much longer to JIT with all the extra
function arguments).
update this unused code
add cmake generated files to .gitignore
initial CMakeLists.txt to build pyston
cmake link curses and lzma directly (don't try to find_package())
correctly find unwind library from pyston_deps
build publicize with cmake and remove src/runtime/inline/*.cpp for now
cmake properly build runtime/inline/*.cpp with llvm bitcode
add appropriate license https://github.com/shadow/shadow/blob/master/LICENSE
cmake set error with message() and FATAL_ERROR
cmake use llvm provided module
cmake build publicize utilizing llvm provided cmake module for libraries
add archive files (*.a) to .gitignore