some renaming, added inkey() and setShell() and a new demo