Bug 747811 - Make the tiles backend safe across processes. r=nrc,BenWa

The tiles backend passes raw pointers to transfer tiled buffers between the
main thread and the compositor. This patch changes that to use shared
memory and tile descriptors instead, as well as changing the memory management
slightly to facilitate that.
Bug 747811 - Separate gfxReusableSurfaceWrapper into a base class and implementation. r=BenWa

Split gfxReusableSurfaceWrapper into gfxReusableSurfaceWrapper and
gfxReusableSharedImageSurfaceWrapper, to allow for non gfxSharedImage-based
implementations.

--HG--
rename : gfx/thebes/gfxReusableSurfaceWrapper.cpp => gfx/thebes/gfxReusableSharedImageSurfaceWrapper.cpp
Bug 747811 - Add gfxReusableImageSurfaceWrapper. r=BenWa

Add an implementation of gfxReusableSurfaceWrapper based on gfxImageSurface
and use it on Android to avoid the overhead of shared memory.