QColorDialog: Streamline painting code of QColorLuminancePicker.

Task-number: QTBUG-36078
Change-Id: Iea7dcb1fdae955615345aa835dc0b1a67840f39d
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Round evenly in INV_PREMUL

Currently INV_PREMUL rounds strictly down. While PREMUL rounds evenly.

This patch adds 0x8000 to the intermediate results in INV_PREMUL before
right shifting, thereby achieving even rounding.

The rounding also makes PREMUL(INV_PREMUL()) into an identify operation,
which means we can safely convert ARGB32PM to ARGB32 and back without
ever losing color details. A test is added to verify this.

Change-Id: I1267e109caddcff0c01d726cb5c1c1e9fa5f7996
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>