Fixes logic for calculating percentage

Fixes logic for calculating percentage for cgroups.Stats.CpuStats.CpuUsage.PercentUsage

Previous logic divided a uint64 by a uint64 losing precision before multiplying by clock ticks and cpus
This fix maintains precision before converting back to uint64

Docker-DCO-1.1-Signed-off-by: Nicholas Weaver <lynxbat@gmail.com> (github: lynxbat)
I thought of that. But we still have to deal with the fraction. I made it work that way but what I saved in float64 words I lost in math readability. If you have an idea that is still pretty easy to follow and drops all the floats I would love it. I can drop one by wrapping the multiplication product rather than each element. I will add a commit for that.

Honestly, I would have preferred this type as a float with fractions of 1 (.25 = 25%). But I know a refactor is coming so I just have this bandaid for now waiting for the goodness. And I don't want to introduce type changes to a struct and make you guys mad on the first PR I submit ;)