[settings] add widget attribute

If widget attribute contains one of "radio", "combo", "slider", "spin" that widget is used,
otherwise still automatically decides which widget to use.
Not the nicest OCaml code, but works...
Also properly extract number of decimal digits and use that for spin button as well.
as requested in #795
[ocaml] fix uint32 parsing

Don't use int32 to represent uint32 so we don't get overflows...
When extracting an uint32 from a bytestream, copy it to a C uint32 first,
then convert that to an int64 for usage in OCaml (since it doesn't have unsigned ints)

This addresses #793 at least for unsigned 32bit values.
Only tested on 64bit system so far...
[waypoints] start fixing waypoint accuracy issue (#762)

- all transformation are done in double on ground
- 7 digits in degrees for Ivy messages and GCS display
[math] add some geodetic functions in double precision
[ocaml] fix handling of uint32 in gcs
[papget] fix warning
update CHANGELOG
lat/lon int in 1e7 deg instead of rad

so we don't loose resolution by converting and storing as radians
[messages] rename class to msg_class

makes it possible to use the python parser using xmlobject since class is a reserved word.
[ins] fix typo
[modules] fix nav_spiral

no generic variable/enum names in headers...
Also add it to nav_modules flight plan and test it with microjet_lisa_m
Merge branch 'master' of https://github.com/paparazzi/paparazzi into logger_lisa_s
made the module usable (added a gui)