pathProto = new PathWrapper(this);
hopObjectProto = HopObject.init(this);
// use lazy loaded constructors for all extension objects that
// adhere to the ScriptableObject.defineClass() protocol
new LazilyLoadedCtor(global, "File",
"helma.scripting.rhino.extensions.FileObject", false);
new LazilyLoadedCtor(global, "Ftp",
"helma.scripting.rhino.extensions.FtpObject", false);
new LazilyLoadedCtor(global, "Image",
"helma.scripting.rhino.extensions.ImageObject", false);
new LazilyLoadedCtor(global, "Remote",
"helma.scripting.rhino.extensions.XmlRpcObject", false);
MailObject.init(global, app.getProperties());
JSAdapter.init(context, global, false);
// add some convenience functions to string, date and number prototypes