#552 Detector non-linearity and reciprocity failure

A basic method to apply any desired non-linearity on an Image has been included to begin with. The non-linearity can be specified by a LookupTable or as a function, possibly with parameters, that can act on NumPy arrays. In addition, it also includes a feature to correct for reciprocity failure. A basic unit test to test these functionalities have also been built.
I think this makes sense. For example, in noise.py, the image is edited directly. If the user wants to keep the images at each stage, then that will have to be achieved explicitly. I'll wait for a day or so to see if anyone else has a different opinion on this.