Add support for .tar.gz and .tar.bz2 dependencies

Hi!,

 I would find the support for .tar.gz and .tar.bz2 files very useful for my project. It just download and decompress the sources from the provided URL.
random:uniform/1 only have 42bit resolution. I'd rather use random:uniform/1 twice to generate a unique number as `erlang:trunc(random:uniform() * 1000000 + random:uniform())`. FYI.