Type cleanup
Get rid of redundant visitor pointers
Type cleanup
Templatize image_intrinsic_parameters
More internal type cleanups
Stop depending on implicit conversion between src_reg and dst_reg
Remove conversions from backend_reg to src_reg, dst_reg, and fs_reg
!UPSTREAM: test harness