Added initial shell implementation.  

Probably needs better error handling.  Also, implementation isn't very elegant.
@bsoetaer 
We just exit by closing the pipe.  Then EOFError will be thrown.