make SQLite case insensitive

SQLite is marked as CaseSensitive in DBIx-SB, so LOWER()
function is used to achive case insensitivity. SQLite
has no functional indexes, so searches with LOWER() are
not using indexes.

SQLite can be case insensitive using collations. At least
to a point where developers are happy. Making it case
insensitive for unicode may require additinal effort, but
we expect SQLite to be used only for experiments, so it's
enough.

Switch to case insensitivity via "collate nocase" and
monkey patch DBIx::SB. We don't change SB as it's more
effort to keep it backwards compatible and implement
this change.
Merge branch '4.2/sqlite-case-sensitivity'