SPA Student Project Allocation. NB. This implementation untested. http://www.dcs.gla.ac.uk/publications/PAPERS/7952/spa-acid.pdf