NDVI component selection and legend

These commits add:
* VI Calculation (in addition to NDVI)
* Color component selection
* A graphical legend across the bottom of image (optional)

The text in the legend uses Cairo. If Cairo is not available for the build, then the legend will be drawn without any text (just a gradient, basically).