a more fully featured version of toy app as covered in Hartl book