restructured tests, added more test