Restructure of unit tests

All projects unit tested placed in one class library under their own dll
rather than separate projects.