Moved gamma correction from output to controller.

Gamma correction for level to proper intensities is now performed on the controller rather than the individual outputs. Also, the gamma list is precomputed at initialization time instead of each value being calculated on the fly. This should boost performance slightly at the cost of a little memory.

The default gamma correction value is 1.0, which results in zero change.