introduce noConflict, support commonJS envs