switching to require js for dependency management