Merge branch 'release/0.3.0' into develop
shell_command_on_region should actually insist on an argument.
Use 'None' for parameters rather than default values.

This makes it slightly easier for other classes to set their own specific default values.
Use Sublime error dialog rather than providing our own.
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.
Bump version number and update changelog.
Merge branch 'release/0.4.0'