Group work for ECS256, Winter 2014.