Update the GroupJoinFinder to also find Foreign Keys used in joins. This
marks the TableSource of the child table with the information about the
foreign key used as part of the join. 

Also add tests to verify the system finds these joins correct. 

Note: The optimizer does nothing with this information at this time, it
just marks the source tables. The optimizer changes are for a later
time.