Extend the README with many more details

Also removes some copy/paste errors.
In Broccoli, a "tree" is one of two things:

* a string that resolves to a directory in the current path
* an object with a `read` and `cleanup` method.  calling `read` must return a string that resolves to a directory in the CWD

So all the examples show a string because it is easier to demo that way, but it is absolutely possible for it to be either.