Forward-port surface dithering from CM10.1

This allows the use of 16-bit color displays without excessive color
banding;

Change-Id: Icb469b9cb4beb686516c60bb576dbd0a73f505e0
Merge remote-tracking branch 'cm/cm-10.2' into cm-10.2

Conflicts:
	services/surfaceflinger/Layer.cpp
	services/surfaceflinger/SurfaceFlinger.cpp
	services/surfaceflinger/SurfaceFlinger.h