restructured folder hierarchy for proper separation, added tests for args and no arg init