Initial commit of Y.Tree and friends.

Imported from the SmugMug Tree gallery module, which has a more
extensive commit history:

https://github.com/smugmug/yui-gallery/tree/master/src/sm-tree
Split labels out into an extension as recommended by @ericf.

Eric pointed out in IRC that labels are a pretty UI-centric metaphor and
probably don't belong in the base Tree and Tree.Node classes, and I agree.

This commit removes the label implementation from those base classes
and moves it into a Y.Tree.Labelable/Y.Tree.Node.Labelable extension.
Rename events: loading->beforeLoad, loaded->load
Consolidate Tree.Node extension modules into Tree extension modules.
Rename openable methods: toggle->toggleOpen, toggleNode->toggleOpenNode
Rename _fire() to _fireTreeEvent().
Move AOP bindings to the initializer and add tests to cover them.
Use more unique AOP method names to avoid collisions.
Update API doc module tags.
Initial commit

For development history see https://github.com/juandopazo/yui3/pull/4
Functions are no longer special params in batch

Y.batch parameters are just run through Y.when to simplify how it works
Remove extras module from this release

This way we can enhance cancel() in the future and possibly provide
timeout() by default
Remove reference to old Deferred from texts
Remove the dependency on "oop"

Replaced the use of bind() with a closure to avoid a utility module and
for extra performance.
Stopped using each() to add methods to Promise
Added missing newlines
Added README and HISTORY files
fix documentation typo in SVGDrawing
Merge branch 'aplus-promises' of git://github.com/juandopazo/yui3 into juandopazo-aplus-promises
Some test tweaks to promises tests (cli)