Update API docs and demos for recent worker improvements.

1. The timer is just an example. There can be a plethora of reasons for GC to not work properly, including bugs in the deflate/inflate library, bugs in browsers and uncareful coding by library users.
2. That is the point. Users *should* call `.close()` when they are done. By documenting that `.close()` must be called (no exceptions), we ensure that zip.js will not leak resources, even if the user accidentally leaks the worker (e.g. by declaring the worker in the global namespace).
3. Yep. And those "advanced users" will hopefully still not merely rely on GC for cleaning up resources.