Began addressing feedback from bug #24697

Started rewriting steps to apply an orientation lock algorithm as per Bugzilla bug [24697](https://www.w3.org/Bugs/Public/show_bug.cgi?id=24697). 

It reworks the way the promise are resolved/rejected and the "pending promise" which is in the asynchronous task. 
Returning the promise happened at the end of the algo. However, I've changed this as you suggested.