Promises are a useful way of turning async code and writing it as if it were synchronous. In this episode we'll create a promise library from scratch so we can see how they work under the hood.