There are two main differences between Kris Kowal's Q and $q:
1. $q is integrated with the $rootScope.Scope Scope model observation mechanism in angular, which means
faster propagation of resolution or rejection into your models and avoiding unnecessary browser repaints,
which would result in flickering UI.
2. Q has many more features than $q, but that comes at a cost of bytes. $q is tiny, but contains all the
important functionality needed for common async tasks.