move away from player_id's, allocation inputs are now player names.
enforce team balance restrictions while recursing.