"Finished" v1 of the effectual DB library.

Still need to add some more static guarantees, such as preventing calls to
'step' when there are no more rows are available, or if a previous
call failed.

getColumnText / getColumnInt should also probably return Maybe values, to better
handle failures. Some way of making this easy for developers to use would be necessary.