Changed error handling in Catalog Upgrade path to cleanly exit the
server with a descriptive error message irrespective of the type of
failure detected in the upgrade attempt.

One new path identified is where a stored procedure in the catalog is
loaded but the initialization code of that class generates an exception
or throwable. In the test case the class throws NoClassDefFoundError and
we don't detect or recover from the throwable gracefully.

This patch also changes the catalog diff test to use crashLocalVoltDB
instead of an assert.
Fix JUnit tests that rely on previous error output
Minor documentation correction
Incorporated Comments from Steve and Paul
Merge pull request #1364 from VoltDB/ENG-6177-ErrorOutputOnCatalogUpgrade

Eng 6177 error output on catalog upgrade