js: add 'onDestroyed' callback
js: use requirejs/amd wrapper