remote: expose parse_push_refspec()

parse_fetch_refspec() is already available to other callers via
remote.h.  There's no reason why parse_push_refspec() shouldn't be.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
remote: expose get_ref_match()

We need it.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
sha1_name: prepare to introduce AT_KIND_PUSH

Introduce an AT_KIND_PUSH to be represented as "@{p[ush]}".  Determine
it using branch.remote.push_refspec.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
sha1_name: implement finding @{push}