Coursework submitted for the CM3202 module (March 2014)