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
Replace size and info caches with a pool lookup cache and remove redundant pool searches.
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