Hack: Download resources concurrently.

Adds a method `#prefetch` to Resource, which is delegated to by
SoftwareSpec. This methods instantiates the download in the background.
The actual `#fetch` method waits for this background thread to finish,
if one has already been started. Otherwise, `#fetch` downloads the
package synchronously.

Now, a FormulaInstaller calls `#prefetch` on `active_spec` right away,
so that the package can be downloaded while its dependencies are being
brewed.

Also, when a list of dependencies is obtained to be installed, we
convert each dependency into formula beforehand, calling `#prefetch` on
all of them, and proceed.

This is a hack, and this makes the terminal output go crazy, due to
several `curl` instances being run at the same time.