Checkpoint caching code.
Checkpoint compute_cached implementation.
Add test for compute_cached.
Merge branch 'master' into compute_cached

Conflicts:
	Makefile
	src/Func.cpp
Initial compute_cached support.
Merge branch 'master' into compute_cached

Conflicts:
	Makefile
	src/IR.cpp
	src/IR.h
	src/Lower.cpp
Forgot to add the cache prototype/placeholder.
Checkpoint compute_cached code.
Merge branch 'master' into compute_cached

Conflicts:
	src/CodeGen.cpp
Correctness fixes for compute_cached.

Stores to cache key now take into account that the index to Load/Store
is scaled by the sizeof the type.

The cache_tag support now properly records the expression.
Fix issue with alignment in cache key.

Make cache incorporate buffer bounds in hit test.
Merge branch 'master' into compute_cached

Conflicts:
	src/IR.h
Merge branch 'master' into compute_cached

Conflicts:
	Makefile
	src/Lower.cpp
	src/Schedule.h
Missed in merge.
Couple more merge issues.
Merge branch 'master' into compute_cached

Conflicts:
	Makefile
	src/Schedule.cpp
	src/Target.cpp
Merge fixes.
Added a rule to replace bitshifts by a constant value to a divide by the corresponding power of two.
Added a check to the simplification to ensure the bitshift is valid.
Simplified the integer overflow checks in the simplification.