optimize divide()
optimize divide()

we can reuse input slice. this gives about 30% speed increase
probably more in common scenarios which use less than 1M points

BEFORE:

❯❯❯ go test -run=Divide -bench=Divide -benchmem
PASS
BenchmarkDivide1M-8	     300	   5846951 ns/op	2052.35 MB/s	16007168 B/op	       1 allocs/op
ok  	github.com/raintank/raintank-metric/metric_tank	28.387s
❯❯❯ go test -run=Divide -bench=Divide -benchmem
PASS
BenchmarkDivide1M-8	     300	   5880015 ns/op	2040.81 MB/s	16007168 B/op	       1 allocs/op
ok  	github.com/raintank/raintank-metric/metric_tank	28.603s

AFTER:

❯❯❯ go test -run=Divide -bench=Divide -benchmem
PASS
BenchmarkDivide1M-8	     500	   3954290 ns/op	3034.68 MB/s	       0 B/op	       0 allocs/op
ok  	github.com/raintank/raintank-metric/metric_tank	41.568s
❯❯❯ go test -run=Divide -bench=Divide -benchmem
PASS
BenchmarkDivide1M-8	     500	   3963394 ns/op	3027.71 MB/s	       0 B/op	       0 allocs/op
ok  	github.com/raintank/raintank-metric/metric_tank	41.663s

raintank/raintank-metric,replay/metrictank,replay/metrictank,raintank/metrictank,raintank/metrictank,replay/metrictank,raintank/raintank-metric,OOM-Killer/metrictank,OOM-Killer/metrictank,raintank/metrictank,raintank/metrictank,OOM-Killer/metrictank,replay/metrictank,raintank/raintank-metric