Allow setting `primary_key` as a read model field type

This updates the read model fields to allow `primary_key` as a
type. This type-casts the column the same as it does integers.
This enhances the factories when they providing data. Any read
model columns listed as primary keys will automatically get
unique integers.

@kellyredding - I thought of this while looking at Patrick's changes to ensure unique values for read model columns. This should help with ensuring that primary key columns that are joined in get unique values when the factory generates data for them.