for CS348 : Parallel and Distributed Computing, Winter 2013, Carleton College