QtCore: fix the number precision in QJsonDocument.toJson()

In JSON, any number is stored in double. We need to make sure we keep
the maximum possible number precision for integer number. In IEEE 754
double format, the significand precision is 53 bits(52 explicityly
stored).

Autotest is included. qint64 and double work fine.

Task-number: QTBUG-28467 Change-Id:
I7f857671c50e4334e9329c778f9b4f090f490540 Reviewed-by: Sune Vuorela
<sune@vuorela.dk> Reviewed-by: Thiago Macieira
<thiago.macieira@intel.com>