fix Issue 3825 - AAs entries are default initialized before the new value is evaluated
fix Issue 9393 - Partial template specialization and template lambda does not work
fix Issue 9415 - delegate inference should make function literal impure
Revert 9rnsr/fix9230 and 9rnsr/fix8408

- Revert "Merge pull request #1418 from 9rnsr/fix9230"

  This reverts commit c42d35bcf92cd26c2b83c3d2e5fc21e5a0f2d296, reversing
  changes made to 9f2d9eafacd75c22ea7a705151ee2a8e20a1638c.

- Revert "Merge pull request #1110 from 9rnsr/fix8408"

  This reverts commit b6a809346a43c7fbf350bd4181d350dd9b2cd4e6, reversing
  changes made to 3b061322300c5b7a39f1b5c5f76016a4d9906899.
Remove unused code which will never be activated
fix Issue 8998 - 'inout pure' returns immutable, which in reality is mutable

By fixing issue 7769 (relax inout rule), we cannot assume a function with inout parameters as PUREstrong, because the return type may not have any inout indirections.
Separate returned value isolation check from purity level calculation
Fixes Issue 9480 - Template name should be stripped of parameters in JSON output.
Merge pull request #1644 from AndrejMitrovic/Fix9480

Issue 9480 - Template name should be stripped of parameters in JSON output
Merge pull request #1572 from 9rnsr/fix9415

Issue 9415 - delegate inference should make function literal impure
Merge pull request #1519 from 9rnsr/fix_purity

Refactoring/improvement of issue 8408, and additionally fixing Issue 8998
merge fix9383
Merge pull request #1465 from 9rnsr/fix3825

Issue 3825 - AAs entries are default initialized before the new value is evaluated
fix merge commit