Integrate changes from The Witness

- Add support for tex*size intrinsics.
- Add support for tex2Dgather intrinsic.
- Add support for interpolation modifiers in HLSL generator.
- Fix support for multiple chained assignments.
- Fix handling of -- operator.
- In progress: support for stage blocks and inline input/output
declarations.