Mark tables with extra columns as not many to many.

When a many to many table has additional properties, then the correct
doctrine approach is to mark it as a separate entity and use one to
many/many to one relationships for it.  This modifies the many to many
detection to exclude tables which have more than three columns (one for
id + one for each foreign key).

The comment for auto detection disabling has been retained and a new one
for forcing m2m to be enabled (same comment format, but setting to true)
has been added.
Merge branch 'improved_m2m_detection'