foo
pre-moving batch stuff
small updates, some unittesting added
much updating of unittests, and rearranging of files
much updating of unittests, and rearranging of files