Download bower packages as zips

@devoncarew

Addresses #2999.

I think instead of a flag, we should have a factory (just a static method, not a dart factory), that can decide whether to clone or download a zip based on the package being provisioned. Perhaps just based on the url - that it is coming from github.