Check there is actually something to insert in the text insert command.
Minor change to a comment.
Add a 'clear buffer' command.
[#6] Allow the working directory to be set explicitly.

This doesn't quite resolve #6 but it does give us a little bit more flexibility.
[#4] Factor output processing to append data to a buffer.

Previously any buffer or panel was replaced with the output of a process in one go. This change allows data to be appended.
[#4] Provide process output as available to callback.

If there is a callback parameter then we call it whenever there is any output available. Otherwise we accumulate all of the output as before and then return it as a string.
Factor the refresh command to use the main 'run shell command' command.
[#4] Allow caller to decide whether to accept process output piecemeal.

Fixes #4.
Minor formatting change.
[#4] Add progress message for long-running commands.
Minor typo fix in README.