Fix game list being uninitialized for pk3 check error message
Fix game_restart <invalid game dir>

Spearmint, unlike ioq3, can fail the check for default.cfg in FS_Restart by doing "game_restart nonExistantFolder" because basegame isn't kept in search path.
If not running a server, Com_GameRestart has shutdown the client system when we hit Com_Error. So we need to restart the client system in Com_Error, otherwise we just have a tty.
If running a server, we hit the Com_Error before shutting down the client system. So make sure client isn't running before restarting it in Com_Error.

The client speex change is required for game_restart while running a server.
CL_Disconnect was getting called again before clc was cleared, causing double freeing speex pointers causing libc error.
Com_GameRestart -> SV_Shutdown -> CL_Disconnect -> FS_PureServerSetLoadedPaks -> FS_Restart -> Com_Error -> CL_Disconnect