Forward-port surface dithering from CM10.1

This allows the use of 16-bit color displays without excessive color
banding; behavior can be controlled by the persist.sys.use_dithering
property.

This is a straight forward port of http://review.cyanogenmod.org/35240
for CM10.2.

Change-Id: Icb469b9cb4beb686516c60bb576dbd0a73f505e0
Prefer 16bpp surface formats

Adds a property to use RGB565 surface formats for the opaque
surface default, enabled by default.

Change-Id: Iac9bbc8292a863e2ab86093df3ecf218e4ec61e1
don't use fence sync for qcom legacy display

Change-Id: I4e7df9ac5c6e2eb5e6f923c907d0ec8d391a93d8
separate mHeap-based screenshot from BOARD_EGL_NEEDS_LEGACY_FB

No need for the Exynos/Tegra legacy fb implementation on legacy
qcom. Add a separate flag for mHeap-based screenshot in case of
future extensions. Enable mHeap-based screenshot for legacy qcom
dislay.

Change-Id: I35ff015555f19a5ba2857ad3d765d02eb6b9acde