Refactor initReadout for component group compatibility.

This reworks the logic within initReadout so that setReadoutFormat is
always called, even if the IdvWindow passed to initReadout is null (as
seems to be the case when dealing with component groups).

Always calling setReadoutFormat like this is safe because it always
does an internal check for whether or not the readout field is null.

[1520]
Fix getADDEImage "day" parameter regression.

Some users were apparently passing in YYYYDDD dates as integers.

[1303]
listADDEImages should also accept integer dates.

[1303]
whitespace fixes [1303]
Formatting and a couple new interactive functions. [1303]

This adds getLogLevel, setLogLevel, and editFile (as well as some
supporting Java methods).
Some javadoc. [1303]
listADDEImages accepts localEntry parameter. [1303]
getADDEImage and listADDEImage results should be similar.

[1303]
Add editFile function to default imports. [1303]
Override StateManager's getJythonVersion. [0]

Look in Jython itself rather than relying on the IDV's build.properties.
Javadocs [0]
listADDEImage now uses ADDE port numbers. [1303]
[0] Dreamweaver updates synced from web server.
[0] Dreamweaver updates synced from web server.
Pushing code during a fire (drill!?) [1303]

Bug fixes to setLogLevel and getLogLevel.
Remove _setLogLevel. [1303]
Very initial version of listADDEImageTimes. [1303]

Pretty much listADDEImages(…), only this function returns *just* the
available image times.
Use Level Strings from Logback. [0]

There's no sense in duplicating the String representations of Logback's
logging levels.
Add "temporary" parameter to setLogLevel. [1303]

Users can now control whether or not setLogLevel will save a given
level between sessions. The default behavior is to consider all
setLogLevel changes as temporary. Saving the log level change can be
accomplished with something like:

  setLogLevel('TRACE', temporary=False)

One thing to be aware of is that saving the log level can only be used
with the "ROOT" logger. So something like the following will raise a
ValueError exception:

  setLogLevel('TRACE', loggerName='ucar.grib2', temporary=False)
Fix for pasting Jython Shell text into "rich" editors.

Bob and Rick (and myself) were noticing that sometimes copying text
from the Jython Shell and pasting into certain editors would munge
newlines. The apparently random behavior is even worse than Amateur
Hour stuff. :(

The problem (in a general sense) turned out to be the fact that I was
"sending" data to the OS clipboard and setting the support content
types to plain text *and* HTML. So-called "rich" text editors (Word,
Wordpad, Thunderbird, Mail.app, etc) were sensibly grabbing the HTML.

The fix is to only send plain text to the clipboard (but this may
become an annoyance if syntax highlighting  ever gets off the ground).

[1303]