Minimalistic Implementation of Asynchronous Patterns (AJAX, Deferred and Promise)