ripple: Don't linearize buffer
waves: Don't linearize buffer
cartoon: Refactor caching behavior, don't linearize

* Use get_cached_region instead of internally caching the ramp
  calculations, the previous system caused the blur to be
  recomputed multiple times.

* Use iterators instead of linearizing the buffers. I left the samplers
  for the gray buffers because I'm not sure if the effect they cause
  is intentional.