Improve behavior of IP::toUnsigned on Windows
On Windows (and 32-bit systems), pow( 2, 32 ) - 1 is a float, which makes
IP::toUnsigned return a float sometimes (instead of string, int, or false,
as is specified in the documentation).
This makes problems for some callers (e.g. I0c9a4ae7 had to modify
wfBaseConvert because of this, while I believe this change would have made
that change unnecessary).
So to improve that, and make the result correspond to the documentation,
we ensure floats are converted to strings.
Plus, more phpunit coverage of IP::toUnsigned and the related IP::toHex.
Change-Id: Ic8e4d9c65497e78960b03555eab0558a6af7d8d2