Speed up overlap checking (closes #131)
Ran on a medium-sized pytential FMM example (order 20, Laplace 2D kernel).
Before:
ncalls tottime percall cumtime percall filename:lineno(function)
8202 0.054 0.000 158.409 0.019 /Users/matt/src/loopy/loopy/symbolic.py:1806(do_access_ranges_overlap_conservative)
After:
ncalls tottime percall cumtime percall filename:lineno(function)
8202 0.030 0.000 4.771 0.001 /Users/matt/src/loopy/loopy/symbolic.py:1828(do_access_ranges_overlap_conservative)