Switch //net SocketDataProviders to base::span<>

Currently, the SocketDataProvider interfaces in //net their parameters
in the generalized form of (T* stuff, size_t stuff_len) pairs of
arguments. Rather than use this error-prone pattern, switch it over
to base::span<> and propagate it through to callers and their respective
functions.

This has the side-effect of substantially reducing the use of arraysize()
in //net, thus reducing the risk of tripping the PRESUBMIT warning as part
of https://crbug.com/837308

BUG=837308
TBR=dimich@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo
Change-Id: Ic4f950f149b11061e819b546f3a6d45fc0216f58
Reviewed-on: https://chromium-review.googlesource.com/1045798
Commit-Queue: Ryan Sleevi <rsleevi@chromium.org>
Reviewed-by: Tarun Bansal <tbansal@chromium.org>
Reviewed-by: Derek Cheng <imcheng@chromium.org>
Reviewed-by: David Benjamin <davidben@chromium.org>
Reviewed-by: Helen Li <xunjieli@chromium.org>
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556538}
65 files changed