Added some tests for the exceptions.
Added some tests for the abstract singleton implementation.
Added some tests for the logger.
Modified the build system to add the "tests" target.

This target is an explicit target. It will build the test files under
the "tests" directory.
Fixed build errors on MS Windows.
Added tests for the dynamic library feature of the Uaapi.
Modifed the dynlib tests so it uses msvcrt on MS Windows platforms.