Add TemplateInstance::tnext to construct instantiation dependency graph

To detect speculative instantiations in codegen phase, `tnext` is neccesary for the `test6()` case `runnable/link13350.d`. That's a big difference from the PR #2550.
Create builtin for popcnt.

As suggested by @klickverbot popcnt should be a builtin as it is now an intrinsic.
[Refactoring] Add Type::equivalent(Type *t)
fix Issue 13437 - [e2ir] ICE in e2ir.c 4616
fix Issue 6334 - Template is silently not instantiated
fix Issue 7553 - auto template param triggers mixin conflict
fix Issue 7849 - Manifest constants don't resolve the polysemous literal type
fix Issue 8462 - recursive alias error with function pointer
fix Issue 8724 - Throwing exception in constructor prints strange warning
Merge pull request #3986 from 9rnsr/worksforme

Add test cases for worksforme issues with git-head
Merge pull request #3984 from 9rnsr/fix13437

Issue 13437 - [e2ir] ICE in e2ir.c 4616
Merge pull request #3975 from redstar/popcnt

Create builtin for popcnt.
Merge pull request #3948 from 9rnsr/fix_tinst

Add TemplateInstance::tnext to construct instantiation dependency graph
[Refactoring] Add helper function for array-op classification
fix Issue 13382 - [e2ir] compare string to int - leads to ICE in e2ir.c 1902