Fix issue 8741 wrong code for struct member init using struct ctor

Generate an error if we need to decide if it is a ctor or not, when we
haven't determined the size yet.
fix Issue 9198 - Vararg functions don't respect IFTI rules
fix Issue 6905 - ref acts as auto ref when return type is missing
fix Issue 7252 - ICE(template.c): 'global.errors' on line 4893 in file 'template.c'
fix up for test/compilable/testfptr.d

The result of syntaxCopy should be re-semantic()-ed.
Add test cass for issue 3682
fix Issue 9208 - [ICE](func.c line 1205) with auto return in recursive function
fix Issue 9177 - Wrong `alias func this` incorrectly reports error message
Stop warning in compilation
fix Issue 9230 - Incorrect implicit immutable conversion occurs in pure function

`hasMutableIndirectionParams()` is based on the old `TypeFunction::purityLevel()` (before fixing issue 8408). So its result is consistent with `TypeFunction::purityLevel() != PUREstrong` in 2.060. Then it *fixes* the regression.
Merge pull request #1385 from 9rnsr/fix9177

Issue 9177 - Wrong `alias func this` incorrectly reports error message
Fixed the bug pointed out by Daniel Murphy.

Also updated test cases. By a recent change in 2.061 (4b2767e72c04da35e5615edaa9081b20dccd4974), direct returning of NewExp sometimes avoids immutable implicit conversion. So, test5081 should return mutable array values through local variables.
Merge pull request #1418 from 9rnsr/fix9230

Issue 9230 - Incorrect implicit immutable conversion occurs in pure function
fix Issue 9234 - DMD confuses string template parameter with function
Merge pull request #1420 from 9rnsr/fix9234

Issue 9234 - DMD confuses string template parameter with function
Fix Issue 1730 - Error message on 'this' reference modifier mismatch when
calling methods is uninformative
Fixes Issue 9237 - Add isPOD trait.
Merge pull request #1421 from AndrejMitrovic/Fix9237

Issue 9237 - Add isPOD trait
change copyright year to 2013
drop 'www.' from dlang.org urls