Adding fix and test for #3626

The code was assuming that if oyu passed _joinData to the save method
that belonged to something already in the database, which was not all of
the time. Removing the assumption, but also making saving a long list of
associaitions a bit slower as it has to check the existance of the row
first.
Fixing typos
Fixing file header
Merge pull request #3631 from cakephp/3.0-fix-join-data

3.0 fix join data