Lightweight ajax with pluggable ES6 promises and no mandatory dependencies