introduced require.js, full conversion into modules