Added submodules, reorganized JS files