Remove unwanted togglespect after disconnection of spectated player

If you watched from the first spectate position (SM_FOLLOW1ST), and that
player disconnected, you got switched to the second spectate position
(SM_FOLLOW3RD), instead of stay in SM_FOLLOW1ST - this commit fixes that.

Commit also replaces some togglespect() with spectatemode(SM_FLY), which is
executed, when there are no players to watching.