ScriptInfo: generalize input/output adding methods

This change also fixes a bug where the return value
output item was not actually marked as ItemIO.OUTPUT.
ScriptInfo: change clearInputs to clearParameters

The method now clears out both inputs and outputs.
ScriptInfo: rename parseInputs to parseParameters

This change is in preparation for outputs to parsed the same way.
ScriptInfo: update parseParameters javadoc

The new javadoc describes the new intended syntax options.
ScriptInfo#parseType: load classes with ClassUtils
ScriptService: add parseType(String) method

This method converts a string (which could be a simple class name
or other abbreviation, or might be a fully qualified class name)
into a Java class object.
ScriptInfo: use ScriptService#lookupClass method

By delegating class resolution to the script service, we avoid
each ScriptInfo instance having its own type lookup table.
ScriptInfo: simplify '@' scanning code
ScriptInfo: first cut at new parameter syntax
JavaScriptTest: tweak testBasic style
BeanshellTest: add missing testBasic test
ClojureTest: fix up testBasic
JRubyTest: fix up testBasic
JythonTest: fix up testBasic
ScriptInfo: add accessor method for ScriptEngine
BeanshellTest: add missing testLocals test
ClojureTest: add bindings clear check to testLocal

Specifically, clearing the bindings is unsupported with the
ClojureScriptEngine; the test is mostly there just to document that.
Otherwise, comparing the testLocal method with that of other engines
leaves one wondering why we do not test the clear() method for Clojure.
BeanshellTest: clean up style
ClojureTest: clean up style
JavaScriptTest: clean up style