nir: initial import

XXX split me up
nir: add more intrinsics
nir: fix up nir_call_instr

Use dereferences for calls
nir: intrinsics have max 2 variables

We don't need to dynamically allocate that...
nir/types: include ir.h

Rather than copying one of its functions...
nir/types: make glsl_types enums available from C
nir: texture fixes
nir: add functions to create more kinds of instructions
nir: add more opcodes
nir: add a glsl-to-nir pass
nir: tons of bugfixes and stuff

XXX squash me
nir: hack in a post-link conversion

For making sure things don't crash.
nir: add some more store intrinsics
nir: give array dereferences a constant index

This will help us generate less sucky code with things like matrices.
nir: add an is_packed flag

Ugly, but I can't think of anything better...
blerg
nir: add a pass to lower variables for scalar backends
nir: add more helper functions
nir: add a few more passes
nir: use sets instead of hash tables where we can