Completely rewritten blur.c
It makes 2 matrices and keeps them in memory, and uses a completely different method of deciding whether something has blurred or not.
Not entirely convinced I have the threshold set correctly - needs better logging.