COMPLETE rework, now just net code using requirejs to manage modules (NICELY)