restructuring work done, and adding about 400 testcases
904 files changed