Improve test task's arguments
Make users of acceptByJobOnce handle associated ERROR packets
Update DuplexCombination to get the stream that caused errors passed back
Update promises to only complete with reader errors, as that's all they interact with
Update worker to use writer instead of outbound
Move error emmission out of worker and into the worker task
Make calling warn/status on a disconnected connection non-fatal
Fix bug where warn+fail wasn't becoming an exception due to failure in lastWarning tracking
Explicitly use an encoding for more testable test results
Add some very basic functional tests
We don't need to do a emit-or-throw check ourselves, EventEmitter does that on its own
Ending the task should close it too
We want to trigger on close, not end, as end won't be called on errors
Errors in the work completion stream should propogate out to a job failure
Correct package versions
Refactor error handling

Add error classes for each kind of error.
Keep track of where the user initiated the action that led to the error for
better diagnostics.
Separate connection errors from other socket errors
Merge branch 'detect-error-results'