Example 2.28 almost there. Need to debug event handler code.