expect: notify listener before recording error

This is probably better for the case when output is spat out and the command
exits really quickly. You want the listener to see the output before an EOF
error.
expect: put full output in error message
add SayWithTimeout matcher
add .gitignore