Tried to fix an ArgumentOutOfRangeException in GetSpawnOccupants

as shown in #5588.
We should be returning an empty dictionary if there are no occupied spawns. It is better conceptually and we don't need the null checks on the callers.

An even better fix could be to change the Where condition to only use SpawnPoint indexes that are within the range of the spawns collection:

```csharp
	.Where(c => (c.SpawnPoint + 1 >= 0) && (c.SpawnPoint + 1 < spawns.Count))
```