title: Is there an Image.point() method in PIL that allows you to operate on all three channels at once?
body: <p>I want to write a point filter that is based on the red, green and blue channels for each pixel, but it appears that this might fall short of <code>point()</code>'s abilities -- it seems that it operates on a single pixel in a single channel at a time. I'd like to do something like this:  </p>
  
  <pre><code>def colorswap(pixel):
      """Shifts the channels of the image."""
      return (pixel[1], pixel[2], pixel[0])
  image.point(colorswap)
  </code></pre>
  
  <p>Is there an equivalent method that lets me use a filter that takes in a 3-tuple of RGB values and output a new 3-tuple? </p>