apply SF Patch #350 and add testcase

The test-suite file is only included in Perl5 tests because other languages did not like "::" in module names either.  Java seemed to have the same problem as Perl with the include guard having invalid characters, but after fixing that in Source/Modules/java.cxx deeper problems surfaced.