Shell driver.

@bsoetaer 
Decided to do it anyway, just to see how easy it would be.  Feel free to take it if you make another submission.
Note that we can use ctrl-D to send an EOF and close the shell.