This:
- Adds a Makefile with `make test` and `make lint` and `make bench`
- Adds a new workflow for `main` that runs benchmarks and saves them
- Adds a new workflow for PRs that runs benchmarks and compares against
`main`. When a benchmark regression occurs, it should fail the workflow
This removes github.com/sourcegraph/sourcegraph/lib/errors from the
dependencies of conc and replaces it with the standard library
multierrors (added in go 1.20), with a fallback to the smaller uber
library for older go versions (back to go 1.19). This significantly
reduces the size of the dependency list.