sqlite3_test.go: Fix go test -run=...: Use standard sub-tests (#881)
sqlite3_test.go: Fix go test -run=...: Use standard sub-tests (#881)

Selecting only some tests with go test -run=... does not work, because
some of the tests are executed using testing.RunTests(). That function
is documented as "an internal function". This changes TestSuite to use
the testing subtests feature instead.

This has a behaviour change: the benchmarks now need to be
selected at the command line with the standard go test -bench=.
flag. This will also set up the test database twice when running
benchmarks, rather than once.
mattn/go-sqlite3,mattn/go-sqlite3,mattn/go-sqlite3