ARROW-3681: [Go] Add benchmarks for CSV reader
ARROW-3681: [Go] Add benchmarks for CSV reader

This CL adds a set of benchmarks for the CSV reader type.
E.g.:

```
$> go test -run=NONE -bench=Read/rows=.*_cols=.*_chunks=-1 -benchmem
goos: linux
goarch: amd64
pkg: github.com/apache/arrow/go/arrow/csv
BenchmarkRead/rows=10_cols=1_chunks=-1-8         	  200000	     10219 ns/op	    9560 B/op	      73 allocs/op
BenchmarkRead/rows=10_cols=10_chunks=-1-8        	   30000	     75434 ns/op	   47264 B/op	     368 allocs/op
BenchmarkRead/rows=10_cols=100_chunks=-1-8       	    3000	    489027 ns/op	  426960 B/op	    3255 allocs/op
BenchmarkRead/rows=10_cols=1000_chunks=-1-8      	     200	   5400913 ns/op	 4308912 B/op	   32072 allocs/op
BenchmarkRead/rows=100_cols=1_chunks=-1-8        	   50000	     45297 ns/op	   30552 B/op	     268 allocs/op
BenchmarkRead/rows=100_cols=10_chunks=-1-8       	    5000	    333999 ns/op	  195520 B/op	     661 allocs/op
BenchmarkRead/rows=100_cols=100_chunks=-1-8      	     500	   2660322 ns/op	 1869777 B/op	    4538 allocs/op
BenchmarkRead/rows=100_cols=1000_chunks=-1-8     	      50	  25683147 ns/op	18805425 B/op	   43256 allocs/op
BenchmarkRead/rows=1000_cols=1_chunks=-1-8       	    5000	    423213 ns/op	  218968 B/op	    2086 allocs/op
BenchmarkRead/rows=1000_cols=10_chunks=-1-8      	     500	   2420959 ns/op	 1591808 B/op	    2614 allocs/op
BenchmarkRead/rows=1000_cols=100_chunks=-1-8     	      50	  21765485 ns/op	15474384 B/op	    7841 allocs/op
BenchmarkRead/rows=1000_cols=1000_chunks=-1-8    	       5	 222083917 ns/op	154949808 B/op	   60060 allocs/op
BenchmarkRead/rows=10000_cols=1_chunks=-1-8      	     500	   3938427 ns/op	 3083224 B/op	   20123 allocs/op
BenchmarkRead/rows=10000_cols=10_chunks=-1-8     	      50	  22066971 ns/op	20298368 B/op	   20903 allocs/op
BenchmarkRead/rows=10000_cols=100_chunks=-1-8    	       5	 209542066 ns/op	193038672 B/op	   28651 allocs/op
BenchmarkRead/rows=10000_cols=1000_chunks=-1-8   	       1	2696959353 ns/op	1939814576 B/op	  106070 allocs/op
BenchmarkRead/rows=100000_cols=1_chunks=-1-8     	      30	  35208837 ns/op	31869150 B/op	  200155 allocs/op
BenchmarkRead/rows=100000_cols=10_chunks=-1-8    	       5	 219030269 ns/op	183553152 B/op	  201125 allocs/op
BenchmarkRead/rows=100000_cols=100_chunks=-1-8   	       1	2421018029 ns/op	1692336464 B/op	  210762 allocs/op
BenchmarkRead/rows=100000_cols=1000_chunks=-1-8  	       1	28196721844 ns/op	16891740336 B/op	  307082 allocs/op
PASS
ok  	github.com/apache/arrow/go/arrow/csv	107.802s
```

Author: Sebastien Binet <binet@cern.ch>

Closes #3071 from sbinet/issue-3681 and squashes the following commits:

8eb60c52 <Sebastien Binet> ARROW-3681:  Add benchmarks for CSV reader

apache/arrow,kou/arrow,xhochy/arrow,wesm/arrow,pcmoritz/arrow,itaiin/arrow,pcmoritz/arrow,renesugar/arrow,renesugar/arrow,itaiin/arrow,kou/arrow,apache/arrow,itaiin/arrow,tebeka/arrow,laurentgo/arrow,apache/arrow,pcmoritz/arrow,wesm/arrow,apache/arrow,kou/arrow,apache/arrow,cpcloud/arrow,icexelloss/arrow,wesm/arrow,wesm/arrow,xhochy/arrow,itaiin/arrow,apache/arrow,apache/arrow,itaiin/arrow,wesm/arrow,laurentgo/arrow,renesugar/arrow,majetideepak/arrow,cpcloud/arrow,pcmoritz/arrow,itaiin/arrow,renesugar/arrow,apache/arrow,laurentgo/arrow,apache/arrow,cpcloud/arrow,tebeka/arrow,renesugar/arrow,renesugar/arrow,kou/arrow,tebeka/arrow,wesm/arrow,tebeka/arrow,icexelloss/arrow,laurentgo/arrow,apache/arrow,majetideepak/arrow,majetideepak/arrow,apache/arrow,majetideepak/arrow,xhochy/arrow,majetideepak/arrow,laurentgo/arrow,icexelloss/arrow,renesugar/arrow,majetideepak/arrow,laurentgo/arrow,icexelloss/arrow,itaiin/arrow,cpcloud/arrow,majetideepak/arrow,xhochy/arrow,kou/arrow,icexelloss/arrow,cpcloud/arrow,kou/arrow,kou/arrow,itaiin/arrow,tebeka/arrow,icexelloss/arrow,kou/arrow,icexelloss/arrow,laurentgo/arrow,tebeka/arrow,renesugar/arrow,xhochy/arrow,cpcloud/arrow,wesm/arrow,majetideepak/arrow,pcmoritz/arrow,laurentgo/arrow,apache/arrow,wesm/arrow,icexelloss/arrow,kou/arrow,xhochy/arrow,pcmoritz/arrow,laurentgo/arrow,wesm/arrow,xhochy/arrow,kou/arrow,pcmoritz/arrow,itaiin/arrow,tebeka/arrow,itaiin/arrow,renesugar/arrow,apache/arrow,itaiin/arrow,xhochy/arrow,laurentgo/arrow,itaiin/arrow,xhochy/arrow,renesugar/arrow,cpcloud/arrow,cpcloud/arrow,laurentgo/arrow,xhochy/arrow,pcmoritz/arrow,pcmoritz/arrow,majetideepak/arrow,pcmoritz/arrow,majetideepak/arrow,cpcloud/arrow,wesm/arrow,tebeka/arrow,xhochy/arrow,xhochy/arrow,icexelloss/arrow,tebeka/arrow,wesm/arrow,xhochy/arrow,pcmoritz/arrow,itaiin/arrow,majetideepak/arrow,cpcloud/arrow,renesugar/arrow,kou/arrow,kou/arrow,icexelloss/arrow,wesm/arrow,wesm/arrow,wesm/arrow,kou/arrow,cpcloud/arrow,pcmoritz/arrow,cpcloud/arrow,renesugar/arrow,pcmoritz/arrow,laurentgo/arrow,icexelloss/arrow,majetideepak/arrow,xhochy/arrow,cpcloud/arrow,laurentgo/arrow,laurentgo/arrow,renesugar/arrow,itaiin/arrow,pcmoritz/arrow,kou/arrow,majetideepak/arrow,icexelloss/arrow,icexelloss/arrow,majetideepak/arrow,renesugar/arrow,apache/arrow,itaiin/arrow,majetideepak/arrow,laurentgo/arrow,icexelloss/arrow,pcmoritz/arrow,xhochy/arrow,tebeka/arrow,cpcloud/arrow,renesugar/arrow