Make the GPSD bindings module Python 3 compatible

Also remove gpsfake as it is not really needed and uses a C extension,
so it won't work on mots platforms anyway.
As there are appear to be no Python 3 bindings for GPSD at the moment,
we can also just refactor it a bit to look nicer.
Update six to latest development version

MAin reason for this was to get the unichr wrapper.
Upgrade simplejson to new upstream version

This should give us seamless Python 2.5-3 compatibility.
The local simplejson is used in case Python is missing the JSON parser on the given platform.
Usi six to replace the unicode statement

Looks like the upstream standalone simplejson module isn't really 100% Python 3 compatible. ;-)
More Python 3 compatibility tweaks
Move device type constants & refactor imports
Simple high DPI detection

Also remove some debugging output.