Allow to specify a type for foreign key column in migrations

[Andrey Novikov & Łukasz Sarnacki]
Merge pull request #16231 from Envek/type_in_references

* Allow to specify a type for foreign key column in migrations
* unified the docs
* some cleanup in CHANGELOG