fix for Issue 11543 - multiple definition of std.regex with shared library

- Detect copy relocated ModuleInfos when checking for
  conflicting module definitions.
Add enhanced unittest runtime information

The new information is available from the 'unitTests' member of
every ModuleInfo.
'unitTests' is an array of __UnitTest structs. The __UnitTest
struct provides the unittest function, location etc.
Use new unittest format in default runner
Support named unittests
Verify for cache usage at compile time
Fixed some signed/unsigned warnings in druntime
Merge pull request #799 from lionello/bug259

Fixed some signed/unsigned warnings in druntime
Merge pull request #797 from etcimon/patch-1

Fix cache inconsistency when free'ing from GC
Fixes for OSX
Merge pull request #800 from lionello/osx

Fixes for OSX
Replace size and info caches with a pool lookup cache and remove redundant pool searches.
Remove Bug #12739 work arounds.
Merge pull request #802 from Safety0ff/rmwrkrnd12739

Remove Bug #12739 work arounds.
Use the correct type for va_list
Merge pull request #798 from yebblies/valisttype

Use the correct type for va_list
Merge pull request #801 from Safety0ff/gcpoolsearch2

GC: Remove redundant pool searches
Merge pull request #782 from jpf91/newUnittest

Enhanced unittest support
yieldAndThrow takes a Throwable, there's no reason for call to return an Object
fix property enforcement
fix import declarations