Add "sage" colors to colors.py

A Sage user commented that one couldn't make plots in Sage "sage".  But this is a color.  http://xkcd.com/color/rgb/ recommends the following, and the discussion at https://groups.google.com/forum/#!topic/sage-devel/CnH45Ym4zSk indicates it could be useful as well as fun.
add __eq__ to `matplotlib.gridspec.SubplotSpec`

This is to address the issue discovered in
http://stackoverflow.com/questions/20017314/how-are-existing-subplot-axes-retrieved-using-subplot2grid-gridspec-in-matplotli
where multiple calls to

   gs = gridspec.GridSpec(2, 1)
   ax1 = fig.add_subplot(gs[0, 0])
   ax2 = fig.add_subplot(gs[0, 0])

will return a new axes each time (unlike calls integers or tuples).
Added check to __eq__ to short-circuit out if the other object
does not have the necessary attributes.
added __hash__ so that data model will be happy again
Add qhull source code and license file
Use qhull for delaunay triangulation
Change qhull FILE* handling to work on Windows
Remove autogenerated _qhull.py from test_coding_standards
improved rgb_to_hsv and hsv_to_rgb in colors.py

functions now take anythang that can be coreced into a (..., 3) shaped ndarray

make documentation clear that the input must be in range [0, 1]

properly deal with integer (binary) input

added round-trip tests
eliminate side effects, fixed output shape
Fix crash when running Gtk3 backend inside of IPython
Added vmin and vmax arguments to LigthSource shade method which, if set,
changes the lower and upper border of the colorspace. Compare with
method contourf where these parameters are available.
Corrected code style.
Code syntax correction.
* Exchanged LightSource shade parameters vmin and vmax with norm
  parameter.
* Added LightSource test case similar to example
  http://matplotlib.org/examples/pylab_examples/shading_example.html
Code style fixes.
Another style fix.
- Simplification of norm usage in shade() method

- basic example and assert statement in LightSource test
different fix for comparing sys.argv and unicode literals

cast literals to str instead of inappropriate use of six.u (#2534)
NF - see axes.get_label() when clicking on Edit curves lines and axes parameters after plt.show()