Added external system commands support for events

Print start, print end, print cancel, and Z  height change can now
trigger external system commands.  These are set in config.yaml and take
_FILE_, _PERCENT_, _LINES_ and _ZHEIGHT_  tokens to be passed to
external commands.

system_commands:
  cancelled: echo cancelled _FILE_ at _PROGRESS_
percent done.
  print_done: echo done with _FILE_
  print_started: echo
starting _FILE_
  z_change: echo _LINE_ _PROGRESS_ _ZHEIGHT_