state-waiter (npm): Handle async states conveniently.
Keywords: state|shutdown|cleanup|async|promise