Parse players before units in the viewWorld

Including the player id in the units will eventually help look
them up when required, but we need to parse the player info before
the unit info to make that possible
Convert to storing units by unit id over position

Position is an untrustworthy way of storing units on the client
side. For example, verifying units becomes difficult for the client
if a person is able to change a units position via the console. Ids
are hopefully slightly more secure...
Provide a path to send an attack to the server