[FAB-8844] correct handling of launch errors
[FAB-8844] correct handling of launch errors

An error during launch is incorrectly handled by partial deregistration.
This error maybe benign and ignored by system, thus causing the
deregistration to leave it in an inconsitent state where it believes
the chaincode is not registered (and running) when it actually is.
This causes subsequent invoke to attempt to restart.

The fix is to have errors handled at the right decision point with existing
error mechanism naturally handling them..

Change-Id: I9c655a5355991b2426b88986aa7da1f7145ba15e
Signed-off-by: Srinivasan Muralidharan <523c2042295185cd087fe3a05deea7bac4a627b2@gmail.com>

hyperledger/fabric,muralisrini/fabric,stemlending/fabric,xixuejia/fabric,jimthematrix/fabric,binhn/fabric,manish-sethi/fabric-sidedb,xixuejia/fabric,manish-sethi/fabric,manish-sethi/fabric-sidedb,xixuejia/fabric,manish-sethi/fabric-sidedb,stemlending/fabric,manish-sethi/fabric-sidedb,jimthematrix/fabric,muralisrini/fabric,hyperledger/fabric,manish-sethi/fabric,manish-sethi/fabric-sidedb,muralisrini/fabric,binhn/fabric,stemlending/fabric,stemlending/fabric,manish-sethi/fabric-sidedb,binhn/fabric,manish-sethi/fabric-sidedb