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)