refactoring again and adding some es6 transpiling. more work is needed to convert some modules to es6 and to make sure everything is registered properly for the browser