Task/TaskFileSeeYou: Handle trailing ',' in task entries

Some versions of StrePla write a trailing ',' in task entries, e.g.

"KORBACH/SCHWARZENBACH","KEMPEN","KEMPEN","KORBACH","SCHWARZE","KEMPEN","KEMPEN",

Handle this case correctly.
Makefile: enable the "STRICT" flag on WIN32

Improved compile-time type safety.
Util/DereferenceIterator: use std::iterator_traits

Allows trivial iterator types, e.g. pointers.
JobThread: annotate virtual methods
ThreadedOperationEnvironment: update OnNotification() comment
Util/TrivialArray: use std::array

Gives us a real iterator class and some type safety.
OpenGL/Shapes: pass the correct pointer to CommitWrite()

This bug caused a crash on OpenGL implementations that do not have
GL_OES_mapbuffer (TRAC #3313).
OpenGL/Buffer: add assertions to verify the pointer in CommitWrite()

Don't let TRAC #3313 happen again.
Android release v6.8_preview3
DouglasPeuckerMod: fix potential integer underflow
Android/I2Cbaro: close the EOC DigitalInput

Fixes "java.lang.IllegalArgumentException: Resource already claimed"
when pressing the reconnect button.
Pass line width in the correct unit

The parameter lw (start/finish line width) of the vlapi, expects as
value the line width (not radius) in km not in meters.
Make DAEC_KEYHOLE available to declarations

...so the correct waypoint type for a racing task in German competitions
can be written to devices who support it (i.e. Volklogger).
The actual handling by the Volkslogger driver will be a separate patch.
Volkslogger DAEC-Keyhole Declaration

Make the Volkslogger driver handle DAEC-Keyhole-Waypoint Types for
declarations.
StandbyThread: add method LockStop()
StandbyThread: allow Trigger() while busy

This will call Tick() again after the current iteration has finished,
with no delay.
AirspaceParser: move code to ParseBearingDegrees()
AirspaceParser: use ParseDouble()
XML/DataNode: use ParseDouble()
Dialogs/XML: use ParseDouble()