Handle DB2 SmallInteger type for change_deleted_column_type_to_boolean

With the DB2 sqlalchemy driver (ibm_db_sa), boolean columns are stored
as SmallInteger rather than Boolean (or TINYINT for mysql). This change
updates the two tests that were changing the deleted column to boolean
and then checking the type based on the backing engine so they work for
ibm_db_sa.

Also changes the assertion from assertTrue to assertIsInstance since it
will provide a clearer failure message.

Closes-Bug: #1312423

Change-Id: I42975119ecacaac89e7225f57f9f6b52c455ab6a
Restore correct source file encodings

migration.py includes a non-ASCII character in the top source
comments, so a "coding" directive is needed.  Additionally,
the word "coding" is now used in test_sqlalchemy.py instead
of "encoding".

Change-Id: Ic977b564c5de9261686503506f4edec4a8d8682d
Move to oslo.utils

`oslo.db` uses several modules(`importutils` and `timeutils`) from
`oslo-incubator`. This modules are already incubated and we should use them
from `oslo.utils`.

Change-Id: I09881ea3e115ca95bbd06ff5d1c0d5e253ed7640
Merge "Move to oslo.utils"
Implement a dialect-level function dispatch system

A new utility feature dispatch_for_dialect() is added, which
is intended to provide a single solution for the issue of many
areas within oslo.db where conditional per-database and/or
per-driver behavior is needed, such as that of setting up
special event listeners, connection options, or invoking
special features.  The dispatch_for_dialect() function is
essentially a decorator, which when invoked provides subsequent
"builder" decorators in the style of the Python @property
object and others, so that any number of functions can be
registered against database/driver matcher strings.  The system
supports "single" or "multiple" function call modes, wildcards
for both database and driver independently of each other,
support for URL strings, URL objects, Engine and Connection
objects as lead targets, and additional arguments and
return values for single mode.

The agenda of this feature is to provide the basis for the
removal of all remaining "if db.name == 'MYDB'" conditionals
throughout oslo.db and elsewhere.

Change-Id: I75201487c1481ffc83329a2eaaaa07acf5aac76e
Merge "Handle DB2 SmallInteger type for change_deleted_column_type_to_boolean"
Merge "Implement a dialect-level function dispatch system"