replacing submodules, added a few new handy ones