Attempt to better handle exceptions

Toast was crashing because it wasn't being called on the UI thread.
Hopefully this will cause it to be displayed by the parent activity.