Extract benchmark into separate command

Disables functionality of rest of program
Extract 'work' and 'concat' routines into commands

work runs the hash (currently sequentially, eventually parallel).

concat takes a list of chainfile paths and merges into one.

All data output is on stdout; I moved info messages to stderr.
Implement 'lock' as command

Takes input on stdin and writes to stdout.
Implement unlock as a command
benchmark: show number of processors/threads available

Semi-useful debugging tool.
work: use goroutines for threading

GOMAXPROCS=8 time go run timelock.go work -j 8 -rounds 5000000
reating a chainfile with 8 links, each of 5000000 rounds...
        16.92 real       107.33 user         6.49

Creating a chainfile with 1 links, each of 40000000 rounds...
       62.09 real        65.59 user         6.78 sys

My computer has 4 physical cores, so this is very nearly a linear
speedup, as expected