Fixed #14549 - Removed restriction of single FKs on intermediary tables
Added hint to use through_fields when appropriate
Raise a proper error if given non-existent field names