Basic tests written

Unit tests for basic cases finished. This ought to do until more
advanced functionality is in place. Switching focus to GUI at the
moment; need to redesign in Balsamiq and add mockup to Git repository.