Fixed potentially crash-causing bug in bounds of max
Added faster versions of region_touched

for when you only care about one function
Made sure generated stack allocations are aligned when compiling to asm

Prevents alignment errors on arm
More efficient codegen path for ramps of unknown stride

Instead of generating the whole index vector then doing a
gather, we generate each index in turn and load it
Fixed some bugs in deinterleave

Ops with explicit types (cast and call) weren't having their
types correctly fixed up
Miscellaneous arm codegen improvements
Added more verbose tracing
Cache lowered statements in Func

This speeds up compiling to multiple targets, or compiling to
object and asm.