#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.
A few points about this doc string:
- T is a bit non-standard for time.  I'd recommend lower case.
- p'/T' would be clearer written out as base_flux, since that's the parameter the user will need to supply.
- Similarly, it would probably be clearer to write exp_time rather than T (or t).  Especially in the 
- pR is defined as "the response if the reciprocity relation were to hold".  However, I think that is p, not pR.  pR is the actual observed response when reciprocity _fails_ to hold.
- In the first paragraph you use the letter E for what is p here.
- You say the input image "must have strictly positive pixel values".  That is no longer true.  Now it just needs to have non-negative values.