New scheduling algorithm

Implement new scheduling algorithm that fairly spreads the tasks, so that agents have relatively equal count of containers.

@peterbourgon
`if want, have := 2, len(matched["beefy.net"]); want != have {`

(and repeated below)