text: Title: Adding a self referencing foreign key to an existing table which has a custom primary key
  Body: This is a real edge case that I just came across.
  
  If you have this table:
  
  ```python
  class MyTable(Table):
      id = UUID(primary_key=True)
  ```
  
  And modify it to this:
  
  ```python
  class MyTable(Table):
      id = UUID(primary_key=True)
      fk = ForeignKey("self")
  ```
  
  The auto migration can fail, because it doesn't know to create the new foreign key column as a `UUID` type.