improved testing.  fix loop invariant in #84
oops, add demo/client/lib (recomitting menu.js)