Cleaning up. Function changes. SQL behavior change.

SQL database now a little more aggressive.
If a db/table exists under the given name as a different charset, it
will convert whatever data is there to UTF8.
This could result in data loss, but probably not. This situation is also
unlikely to happen unless the user has been tinkering with the database
manually, in which case other things are liable to break anyway.