Improve enemy spawning.

Two kinds of waves: burst and trickle.
Burst: Sudden inflow of enemies. When starttime is reached, a portal opens
at a random location and begins spewing forth enemies. Once all enemies in
the wave are spawned, the portal closes and enemies in that wave cannot
respawn. Burst waves spawn within the bounds of the level.
Trickle: Constant inflow of enemies. Enemies in these waves spawn at fixed
intervals and can respawn after being destroyed, but the total number of
enemies from one trickle wave cannot exceed the number of enemies defined
in that wave. Enemies in trickle waves spawn outside the level bounds and
quickly move into the level.

For either wave, the spawn location will not be set within a certain
distance of the black hole.