Don't modify args in TableDefinition#primary_key

Previously, if you reused a hash that was passed into a table definition,
then subsequent tables' primary keys would be set to "true" instead of "id".
Merge pull request #10957 from nertzy/dont-modify-options-hash-in-primary-key-4-0-0

Don't modify args in TableDefinition#primary_key