title: Caliburn.Micro's OnUnhandledException not called
body: <p>I have overridden the OnUnhandledException in my bootstrapper, but in the following scenario it is not called:</p>
  
  <pre><code>public class Foo : IHandle&lt;Bar&gt; {
      public void Handle(Bar message) {
          // Do something that requires UI thread
      }
  
      public void DoSomething() {
          eventAggregator.PublishOnBackgroundThread(new Bar());
      }
  }
  </code></pre>
  
  <p>When the handle method is called it will throw <code>InvalidOperationException: The calling thread must be STA, because many UI components require this.</code> because it is performed on the background thread instead of on the UI thread:</p>
  
  <p>That exception is never caught by <code>OnUnhandledException</code> in my bootstrapper. Neither is it caught by the <code>Application.DispatcherUnhandledException</code> event handler.</p>
  
  <p>How can I make a general exception handler that will also catch these types of exceptions, without having to implement try/catch everywhere?</p>