Refactor sth preparation/binding - no functional changes

Notable internal changes:

- _dbi_attrs_for_bind call is moved out of _dbh_execute - there is no point
  recalculating these on retry
- _dbh_execute changed signature: $ident => $bind_attrs
- sth, _sth and _dbh_sth are no more - instead we now have _prepare_sth and
  _bind_sth_params

The test in t/storage/base.t has not been actually working for years (it
did not register a spurious success with $count == 0). Removing it is safe
as t/storage/reconnect.t tests the same codepath more thoroughly
Simplify _select_args_to_query - contortions not needed since 0e773352
Saner check for non-integer values bound as integers in SQLite
Work around SQLite's RT#79576

Includes a warning that data may have been corrupted in previous
DBIC versions, with resources on how to deal with this.