updated all submodules and a bunch of tweaks
merge and tweak