Gamma decode/encode
Gamma read/write pixel
Kernels use linear space
Tabbed alignment fix
Correction uses linear if required

Since filtered pixels can be in linear space, the computation of the
correction must be done in linear space too, if requested
New optional argument "l"

l for linear. Process the luma plane using linear space instead of gamma
space
Debug mode converted to AMD APP SDK
Finalise kernel requires linear argument
Cleanup power() usage

Removed redundant code and switched to use of the "native" power
functions. AMD OpenCL now exposes the native hardware functions. The
precision loss is not a problem.
10 pixel unpack/pack removed

Redundant code that can't be compatible linear space processing (would
lose about 1 bit in shadows)
Documented option for linear processing
Turn off post repair
New optional parameter "c"

Controls use of post filter correction
Documented option for correction after filtering
Use sRGB curve for linear<->gamma conversions
math.h isn't required
Refactor into ExecuteFrame

Preparation for processing the target frame last
Process target frame last
Filtered pixel re-weighted by all temporal frames
min instead of max