Explain potential issues with `.catch` in async calls, and some examples where Error Boundaries would be useful.