Stop interpreting SQL 'string' columns as :string type.

SQL doesn't have a string type, and interpreting 'string' as text is
contrary to at least SQLite3's behavior:

"Note that a declared type of 'STRING' has an affinity of NUMERIC, not TEXT."
http://www.sqlite.org/datatype3.html
Merge pull request #11922 from Empact/string-confusion

Stop interpreting SQL 'string' columns as :string type.
write changelog entry for #11922. [ci skip]
Fix the indentation :scissors:
Remove set_primary_key, replace with primary_key=

First deprecated, now removed: https://github.com/rails/rails/commit/9add7608f1acaa68b025470e7a38901d7e6161ca#activerecord/lib/active_record/attribute_methods/primary_key.rb
Merge pull request #11952 from lmarcetic/master

Remove set_primary_key, replace with primary_key=