Denodeify for Angular's $q