Rewrite ProcessStartRequests to not use async/await to avoid deadlocks

- Deadlocks would occur in the old async/await code if someone attached
  to the PreSendRequestHeaders event.

#3116