Reconnection: save connect command; don't break this when starting a demo.

This fixes two problems:
* reconnection where both ends can use both IPv4 and IPv6
  - connect -6 unv.example.com // using IPv6
  - reconnect                  // but now IPv4?
* reconnection breakage due to demo playback
  Starting the demo overrode the saved server name.
  This led to the demo name being used as the server name.
Add FS_FOpenFileRead_Impure for local non-VM use.
/demo – demo files are never pure, so use FS_FOpenFileRead_Impure.

This fixes the /demo command when used while still connected to a pure server.
Clean up static variable usage in FS_FOpenFileRead_Filtered.