Git ls remote

Adds the `git-ls-remote` api. Will add support to query it from scm layer.

@ussuri 
It looks like this function only returns tags, not other things that `ls-remote` fetches: maybe rename to `lsRemoteTags`? Or add another parameter to request tags or heads or everything? (note that tags and heads are not mutually exclusive).