Set requested alpha size for framebuffer, and hard code pixmap depth.

This fixes #3245 and possibly #2064 as well.
Merge pull request #116 from glennw/fix-linux-builder

Set requested alpha size for framebuffer, and hard code pixmap depth.
Introduce LayerPixel and use it where applicable

LayerPixel represents a "pixel" in layer coordinates, before it is
scaled by the Scene scale and other layer transforms. This is a much
more natural way to store layer sizes and should fix and prevent future
issues with hidpi displays and zoomed views.
Merge pull request #117 from mrobinson/scale

Introduce LayerPixel and use it where applicable
Avoid unnecessary buffer requests

Now that layers can mask their children, we should avoid issuing buffer
requests for areas outside of the mask region. At the same time, layers
can now be positioned and sized so that they do not intersect with their
parents at all. In those cases, we still need to issue buffer requests
for the layers even if their parents do not intersect the redraw region.
Merge pull request #118 from mrobinson/redraw-optimization

Avoid unnecessary buffer requests
Debug layer borders should track their layer's location

Instead of always putting debug layer borders at 0,0 in the scene, they
should track the origin and scroll position of the layers they surround.
Support irregularly sized tiles

Tiles along layer edges can now be clipped to the layer size. This
saves memory along tile edges.
Merge pull request #119 from mrobinson/stubby-tiles

Support irregularly sized tiles
Merge pull request #120 from mrobinson/borders

Debug layer borders should track their layer's location
Allow layers to paint their own background colors

Previously there was only a scene-wide background color, but now each
layer carries its own background color. We can paint this by
generalizing the SolidLineProgram in the OpenGL renderer.
Merge pull request #115 from mrobinson/background-color

Allow layers to paint their own background colors