Although async and await do look great, I am not very keen on using try/catch for everything. Is this not going to end up with more verbose code? I appreciate it will be impossible to ignore errors though.
That said I like to use the caolan/async library when dealing with async callbacks and that adds a ton of verbiage overhead in exchange for a more understandable flow of the data (in my opinion).
The catchall try-catch is my major dislike for async-await though. The only way to exit the async-await loop being to throw is overkill, and makes it more complicated to localize different desired flow branching.