Lots of new code, missing files, start at unit test framework.