Only end the build if it started successfully
Only end the build if it started successfully

In the (rare) case that a design time build failed to start, we would
attempt to release the UI thread in `TryBeginBuild` and then again in
`EndBuild`.  The comments suggested that it was the `TryBeginBuild` that
was intended to do the cleanup and code inspection confirmed that
`EndBuild` did not perform useful work if `TryBeginBuild` failed, so
this change gives `TryBeginBuild` responsibility for cleanup and doesn't
call `EndBuild` a build was successfully started.

Fixes #2117

Microsoft/nodejstools,Microsoft/nodejstools,Microsoft/nodejstools,Microsoft/nodejstools,Microsoft/nodejstools