Bug 924679. Part 1: Band-aid robustness fix. r=mattwoodrow

--HG--
extra : rebase_source : fee33a1412e123adb2fbd91221684c1ece8d8b86
Bug 924679. Part 2: Create static gfxXlibSurface::GetColormapAndVisual so it can be used without a gfxXlibSurface. r=karlt

--HG--
extra : rebase_source : 10599d49077114cd214ceafd811bfea3135bb9ff
Bug 924679. Part 3: Make gfxXlibNativeRenderer::DrawWithXlib callback take a cairo_surface_t instead of a gfxXlibSurface. r=karlt

--HG--
extra : rebase_source : 75bb23badb1f7a65cc7e82efca1ddb92e49d7e13
Bug 924679. Part 4: Add Factory::CreateSourceSurfaceForCairoSurface. r=mattwoodrow

--HG--
extra : rebase_source : 0c9187e8b9597e47e9d0d63d6da757db9a8c8a5c
Bug 924679. Part 5: Add gfxXlibSurface::CreateCairo. r=karlt
Factor out code from gfxXlibSurface::Create so it can be used to create a
cairo_surface_t instead of gfxXlibSurface. Except we leave the existing code
alone since it's really simple.

--HG--
extra : rebase_source : 1c3c0b9fd9997010d80240606c9fa4964361fc87
Bug 924679. Part 6: Remove gfxXlibNativeRender::DrawOutput and convert tmpXlibSurface from gfxXlibSurface to cairo_surface_t. r=karlt

--HG--
extra : rebase_source : 724e9b7881949c868ba528250de6ce9d24eb2752
Bug 924679. Part 7: Remove gfxAlphaRecovery::Analysis since no-one uses it. r=mattwoodrow

--HG--
extra : rebase_source : f0481abfa3e5c4855f71cec66eea5c4501fd8565