Add do_shutdown and simple do_history

Bash is already shut down at exit, but this adds a `do_shutdown` for a restart.  

`do_history`  uses the bash `history` command to fetch the history.  In my tests `do_history` was only called at startup.
This is not actually necessary. A restart will kill this whole process and launch a new one. The parameter is only passed in case it makes any difference to the cleanup the kernel wants to do. Possibly we need to make this clearer in the IPython docs.