Wixfeat4190.1

I think I finally have the right branch merged and in the right state for this to function.

These are the needed 3.x changes for a BA/UX to be able to self update. In 4.x, it's desirable to allow OnDetectUpdateComplete to modify the HRESULT returned by DetectUpdate (so if a user is offline or the website is down, that the BA doesn't have to call Detect a second time).