Add bearing information while creating route/track

Add more information in status bar while creating route or track.
These informations are:
- bearing
- step distance

Signed-off-by: Guilhem Bonnefille <guilhem.bonnefille@gmail.com>
Fix screenshot included in previous commit
Allow an acquire datasource method to *not* have to use a threading mechanism.

Restructure acquire thread usage to enable commonalities for the non thread method to work.
Allow downloading with authentication via curl

New DownloadMapOption to specify the username and password as a single string of the format 'username:password'
Allow acquiring an URL with a username/password authenticated download.

Have to extend the parameters in the datasource method to pass around download options.
Store the main thread value so comparisons can be made to determine the gdk update method
Fix: Improve internal redrawing method for layer panel updates.

Remove hopefully the last place where updating the display is performed from a background thread
Use the thread value to see if it's the main thread or not and then
use the appropriate gtk idle drawing methods for the layers_panel update.
Simplify layer update redraw in determining the gtk update method.

Use the thread value itself to determine whether it's from the main thread or not.