The goal is to detect mismatches between caller-supplied indexes and original
column names, and in that case crash the process by raising Defect. This should
help avoid harder to debug errors for such mismatches.
These helper procs are now higher-order, which allows column metadata checks to
be run only once, i.e. when setting up derivative helpers to be used in an
`onData` callback.
Use compile-time constants for column names and default indexes.
Adjust callback proc annotations to be more precise, and remove unnecessary
annotations.
Don't build with Nim v1.4, building with v1.2 and v1.6 should be enough.
Don't manually run `brew update` because `brew` will automatically do that on
an as-needed basis when running `brew install`.
Per SQLite's docs, `sqlite3_bind_blob(s, n.cint, nil, 0.cint, nil)` is
equivalent to `sqlite3_bind_null(s, n.cint)` but the intent of the latter is
clearer.