Make mandlebulb easier to interact with.

* Make timeout a command line parameter. By default on forever.
  - Tests set timeout to 5s.
* Make background white (easier to see image).
* Exit on either 'q' or esc keypress.
* Add all header files to header list (for IDE).
Enable depth test in rendering of mandelbulb
Enable lighting in mandlebulb rendering.
Add to the WindowBase the ability to track where the mouse is positioned.

Previously we only tracked the mouse while a key was depressed.
Add nicer coloring to mandlebulb example

Uses a nice cool warm color map instead of some rather dark blue and red
colors.
Make mandlebulb colors a little off axis

Because the shading is for flat surfaces, when the colors are also the
same to makes disconnected surfaces look connected and certain camera
angles. This changes the coloring to be slightly off axis so that the
mapped color changes slightly and you get appropriate discontinuties.

I also increased the resolution of the color map to avoid unnecessary
jumps in the coloring.
Merge branch 'improve-mandlebulb'
Merge branch 'allow_mouse_tracking'