working on glsl type inference stuff
rearranged/rewrote some shader/type inference stuff
infer types better when optional args aren't used
add implicit cast support to type inference
handle variable arity better, use for vec/mat constructors
rewrite optional argument handling to make same-type args easier
add types for functions with arg types constrained to other arg types
more constraint types
implement "same type or corresponding scalar" constraint
implement compiler macros, add compiler macros for +,-,*,etc
add let bindings to type inference
add glsl4.5 types
add/update glsl operator type signatures
add vector->scalar constraint, add glsl4.5 function signatures
fix typo
expand macros in glsl-walker
figure out specific types from inferred functions, print types
move POW to GLSL package
working on struct slot/swizzle access
writing to variables, misc fixes