Added support for the legacy applet lifecycle to the new Java Plug-In.
Improved upon the implementation in the old plug-in: added support for
caching multiple identical applets on the same web page, made the
caching more precise by including the document base in the caching
criteria, and added a watchdog timer to flush cached applets when
memory pressure is high.
Out of necessity, added support for getDocumentBase to
IExplorerPlugin. Fixed preexisting bug in MozPluginInstance where the
document base it was producing wasn't semantically correct. Fixed
preexisting bug in code which detected still-visible top-level windows
during AppContext disposal. Added "normalization" of document base
because the URL coming from web browser wasn't the same as when we
constructed a URL and then called toString() on it.
Tested with new mostly-automated test cases in both Internet Explorer
and Firefox 3.