An exercise for the Nashville Software School. Not intended to be perfect.