It turns out that something changed a while back and we started splitting far
more than is needed. The original design split into 1/n-1/n/n/n, but now we
split 1/n-1/1/n-1/1/n-1 for large writes. That's inefficient and the code is
unnecessarily complex in order to support it.
This splits just once for each write, but it splits 1/n/n/n/n/remainder, unlike
the original design, which you can see here:
https://src.chromium.org/viewvc/chrome/trunk/src/net/third_party/nss/ssl/ssl3con.c?r1=97269&r2=97268&pathrev=97269