Minor database change and query change

- Text fields should be UTF-8. Fixes #491
- INSERT IGNORE will still auto-increment InnoDB tables so use MyISAM. Fixes #492

More detail about the second change - an INSERT IGNORE query will still increment when using innodb, even if no row is inserted.  We can work around this by using a slightly convoluted query, but this only works if the table is non-empty, so also check for that on startup and create a dummy record if necessary.