Transform a reference name for a remote

This patch series adds the ability to transform a reference name according to the fetch-/push-spec rules assigned to a remote.