Heavy refactoring : shared endpoints in /public/js/endpoints.js + delegate web part in lib/web