try to get some of the tests passing
rename main to src to be consistent with other projects
bring more files into require style