Add charset and collation options support for MySQL string and text columns.

Example:

    create_table :foos do |t|
      t.string :string_utf8_bin, charset: 'utf8', collation: 'utf8_bin'
      t.text   :text_ascii,      charset: 'ascii'
    end
Consider the table default collation to dump column collation.

When all the column collation dump explicitly, existing tests are some
fail. If table_options is dumped explicitly, then can be correctly
restored without depend on the database default charset and collation.