Add package documentation
Speed up reading

* Re-use file header byte slice
* read byte slice in caller
* rename readFileHeader to parseFileHeader, since it isn't reading
  anything anymore.

benchmark                        old ns/op    new ns/op    delta
BenchmarkReadFileHeader               1700         1283  -24.53%
BenchmarkReaderBigFiles           18882999     18701729   -0.96%
BenchmarkReaderManySmallFiles      2460796      2109620  -14.27%

benchmark                         old MB/s     new MB/s  speedup
BenchmarkReadFileHeader              35.27        46.74    1.33x
BenchmarkReaderBigFiles            3553.96      3588.40    1.01x
BenchmarkReaderManySmallFiles        28.30        33.01    1.17x

benchmark                       old allocs   new allocs    delta
BenchmarkReadFileHeader                  7            5  -28.57%
BenchmarkReaderBigFiles                 58           42  -27.59%
BenchmarkReaderManySmallFiles         7200         5137  -28.65%

benchmark                        old bytes    new bytes    delta
BenchmarkReadFileHeader                187          113  -39.57%
BenchmarkReaderBigFiles               1388          802  -42.22%
BenchmarkReaderManySmallFiles       175953       100262  -43.02%
Split out section flush logic
add support for write ar archives
Implement reset of Writer
Add basic benchmark support for Writer