Ensure we don't leak memory on WPF

Because of WPF, we have to ensure that we Unsubscribe from any WhenAny
or binding that goes through a Dependency Property, if that View isn't
the Main Window (i.e. if the lifetime of the View != the lifetime of the
App).