changed how the lists are initailised.

changed countSupervisor to return boolean instead of map.
this means that the main loops until it is guaranteed that all supervisors
have enough projects assigned, and not any more.