ZKL: add the core Skirmisher Tab's file. This won't compile yet. Part 1 of 2 commit
SpringScanner.cs: Made unitsync public, expose 2 new function to read mod & map cache, made init & uninit unitsync a public function.
Will be used for
  *to read map & mod list
  *to read Spring AIs from Unitsync
  *give external code the ability to start unitsync if it haven't start
LobbyClient/Battle.cs: Made AddBot, AddTeam & AddPlayer script generator public. Some potential fix for these AI script generator based on local test.
(This public function will be used by Skirmisher tab)
ModOptionsControl.cs & PlayerListItem.cs: Made it able to operate in offline/online mode. In offline mode, important info is feed directly to the control rather than reading it from TasClient.
(the offline mode will be used by Skirmisher tab)
SettingTab,NavigationControl, ZeroKLobby.csproj: Allow Skirmisher tab to compile. Register Skirmisher tab in NavigationControl. Add shortcut button to SettingTab
(In Setting tab, the Skirmisher button is on the "tool" row, alongside Rapid, Benchmarker, and Restart Lobby button)
SkirmishControl.cs: implement UI tweak requested by KingRaptor
* panel on the right have DimGrey back color with all buttons as ZKButton,
* name tweaks,
* Game Option button goes directly to Game Option menu.
Note: Panel on the left is still slaved to back color settings in Setting Tab.

other:
A fix to minimap picture update (sometimes startbox position doesn't appear to be updated when we mouse drag them)
NavigationControl.cs: block Webbrowser from reading & accepting address (in address bar) that doesn't start with "http" or "www."
(because if Webbrowser accept address like "Extra", then it is ambiguous with the real tab that is named "Extra" (Skirmisher Tab)!)
Merge pull request #156 from xponen/skirmish_tab

ZKL: Skirmish tab for offline vs bot