first commit
mention APICHANGES document
first commit
make it easier for 3rd parties to write their own back-end helpers

Example: a perl back-end helper might want to add its own messages that
execute in-line perl code, while supporting the default messages. Also,
new in-line messages should be able to act line ordinary analysis tools
from the browser's perspective (i.e. analysis menu, macro expansion).

To accomplish this, we flattened the name space so that all analysis tools
have their own message. We also added an AddAnalysisTask routine to js9Helper
that adds a message to the list of analysis tasks gathered from the analysis
plugins directory.

On the browser side, we added JS9.Send() to allow Web pages to send a message
to the back-end server (to support sending messages that are not analysis
tasks).

Along the way, we found that the callback function to RunAnalysis() and
SubmitAnalysis() was not passing the errcode argument, as it should. This
change to the public API was made and documented in the new APICHANGES file.
merge with pulled code
add back support for runAnalysis msg to help out cached versions of JS9

The last major change to js9Helper.js made each Analysis task a
separate message (instead of going through runAnalysis), but we can
retain the runAnalysis msg as well to help cached versions of JS9
execute remote analysis. It might work ...
js9Helper.cgi should not return fits2png as an analysis task