Springie: Possible fix for the split personality bug

Occasionally I see springie refuse to start a game because "Springie does not have the map/game yet" or try to spec itself on !start for being unsynced. I found a situation that causes this to happen and fixed it, but there may be more:

```
Sent: OPENBATTLEEX 0 2 password 8452 32 0 0 0 spring 91.0 Small_Divide-Remake-v04 	ikinz's Super Secret Clubhouse (better than KingRaptor's) 	Zero-K v1.2.7.3
Sent: SETSCRIPTTAGS GAME/hosttype=SPRINGIE
........
Sent: LEAVEBATTLE
Sent: OPENBATTLEEX 0 2 password 8452 32 0 0 0 spring 91.0 Small_Divide-Remake-v04 	ikinz's Super Secret Clubhouse (better than KingRaptor's) 	Zero-K v1.2.7.3
Sent: SETSCRIPTTAGS GAME/hosttype=SPRINGIE
Received: BATTLEOPENEDEX 35201 0 2 Palladium 192.168.1.10 8452 32 1 0 0 spring 91.0 Small_Divide-Remake-v04	ikinz's Super Secret Clubhouse (better than KingRaptor's)	Zero-K v1.2.7.3
Received: OPENBATTLE 35201
Sent: SETSCRIPTTAGS GAME/hosttype=SPRINGIE	GAME/StartPosType=2	
MyBattle.Users:
Palladium
end
Sent: MYBATTLESTATUS 4194304 0
Received: REQUESTBATTLESTATUS 
Received: SETSCRIPTTAGS game/hosttype=SPRINGIE
Received: SAIDBATTLEEX Palladium Updating to latest mod version: Zero-K v1.2.7.3
Received: BATTLECLOSED 35201
Received: BATTLEOPENEDEX 35202 0 2 Palladium 192.168.1.10 8452 32 1 0 0 spring 91.0 Small_Divide-Remake-v04	ikinz's Super Secret Clubhouse (better than KingRaptor's)	Zero-K v1.2.7.3
Received: OPENBATTLE 35202
Sent: SETSCRIPTTAGS GAME/hosttype=SPRINGIE	GAME/StartPosType=2	
MyBattle.Users:
Palladium
Palladium
end
Springie.exe Error: 0 : TASC error System.ApplicationException: Error while processing command OPENBATTLE 35202: Sequence contains more than one matching element ---> System.InvalidOperationException: Sequence contains more than one matching element
   at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at LobbyClient.TasClient.get_MyBattleStatus() in d:\mingw32\msys\1.0\home\user\zk-infra\Shared\LobbyClient\TasClient.cs:line 108
   at LobbyClient.TasClient.ChangeMyBattleStatus(Nullable`1 spectate, Nullable`1 ready, Nullable`1 syncStatus, Nullable`1 side, Nullable`1 ally, Nullable`1 team) in d:\mingw32\msys\1.0\home\user\zk-infra\Shared\LobbyClient\TasClient.cs:line 316
   at Springie.autohost.AutoHost.tas_BattleOpened(Object sender, TasEventArgs e) in d:\mingw32\msys\1.0\home\user\zk-infra\Springie\Springie\autohost\AutoHost.cs:line 898
   at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
   at LobbyClient.TasClient.DispatchServerCommandOnGuiThread(String command, String[] args) in d:\mingw32\msys\1.0\home\user\zk-infra\Shared\LobbyClient\TasClient.cs:line 1193
   --- End of inner exception stack trace ---
```

Also there's a trivial fix for unlock timing displaying incorrectly.