Interesting. Regarding (1), does this mean you have to download the dependency from GitHub by hand, then put it into the cache before you can "install" it?
Exactly, without a server to fetch dependencies from you can still manage your local cache.
I think this misses the point though. You shouldn't have to "prepare" all of the dependencies you might require since this could be such a large graph.