Added EventAsync and RoutedEventAsync.
General tidyup.