arguments
<String*>
zero or more properties methods to
augment the receiver with. If none specified, everything
in the supplier will be used unless it would
overwrite an existing property in the receiver

Either of the above would create YAHOO.property, then
YAHOO.property.package
Be careful when naming packages. Reserved words may work in some browsers
and not others. For instance, the following will fail in Safari:

YAHOO.namespace("really.long.nested.namespace");

This fails because "long" is a future reserved word in ECMAScript
For implementation code that uses YUI, do not create your components
in the namespaces created by the library. defined by YUI -- create
your own (YAHOO.util, YAHOO.widget, YAHOO.lang, YAHOO.env)

mainClass
<Function>
a reference to class in the module. This
class will be tagged with the version info
so that it will be possible to identify the
version that is in use when multiple versions
have loaded

data
<Object>
metadata object for the module. Currently it
is expected to contain a "version" property
and a "build" property at minimum.