Agent-Worker Message now uses JToken payload and is sent async

As part of the cleanup for this change, Worker logging now transmits through messages instead of standard error and the standard IO reads/writes are now async.