FIX: make getTranslations work even when translation classes differ

These same commits made up silverstripe/silverstripe-translatable#115 which was merged into the 1.0 branch (for SS 3.0.x).  I also would like to see it merged into the master branch (for SS 3.1.x).  I have verified that all test cases run successfully before and after this change.

NOTE: for all test cases to run successfully, silverstripe/silverstripe-translatable#117 needs to also be merged.  It has a bug when running against the 3.1.x branch of SS that is unrelated to this code.