[WIP] Monster infighting

Monster vs monster wars that don't depend on allegiance to player.

Monsters are divided into factions (currently based on the first species). Monsters within the faction do not look up any other monsters in the faction when looking for targets, so it shouldn't be significantly slower for monocultures of zombies. Friendly (to player) monsters have their own faction.

Possible issues:
- Checks for the first species. Monstergenerator doesn't ensure every creature belongs to any species.
- Uses string comparison to compare species. Might be slow
- Large number of creatures of different species could be slow, like large number of friendly creatures could be now
- Multispecies creatures will only respect first species. Not a problem in unmodded game (3 blobs with ["NETHER", "BLOB"])
- A great deal of abilities don't yet support targets who aren't g->u
- Fear/anger triggers still require the player

What would be a good way to turn those string comparisons to something faster?
Is species based division OK or should it be independent (flags maybe?)?
You can try to store a fraction pointer here instead of the fraction string and later only compare the pointer, that might speedup the process.