Add options to preserve existing gamma ramps

This pull request adds options for most of the gamma adjustment methods to preserve the existing gamma ramps and modify these. This allows the user to set the gamma ramps before running Redshift and the effect will be preserved. For instance, some people have requested an option to invert the screen colors. This is now possible by first inverting the colors (e.g. `xcalib -invert -apply`) and then running Redshift with the `preserve` option set for the gamma adjustment method. A more common example would be a display where there is a color correction applied. Redshift will then base the redness effect on top of that correction.

- [ ] Check whether reset mode (`redshift -x`) still works (I suspect not), and decide how it should work when `preserve` is on.