Improving async await calls

Changing all async void calls that are not UI event methods to return Task.
This will help ensure that exceptions are handled on the UI context.