re-write int128 long division to avoid license impact from stackoverflow references (#4633)
re-write int128 long division to avoid license impact from stackoverflow references (#4633)

* rewrite int128 long divison to avoid stackoverflow hit

Protobuf was showing Stackoverflow hits in the code base, primarily code written to calculate long division. This code was copied from a stackoverflow post, which means it would be licensed under CC BY-SA 3.0. Due to this license, IBM Legal did not want to include this OSS in our products and advised us to re-write this particular piece of code to avoid the license restriction. We have re-written the code for our own distribution, and are willing to merge it into the main code base for others who want to avoid the stackoverflow license issues to benefit as well.
google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf,google/protobuf