Change string tracker id to ForeignId struct

SPOT is the only accessed system so far.
Decouple SPOT request details from service logic

This should allow easier addition of other foreign
data sources
Iron up logging
Merge branch 'multisource'
Iron up logging
Switch incremental update debugging off
Update .gitignore file
Check if logo file exists before using its path

Still path to logo is hard-coded because it looks
quite experimental so far