A ReceiveCommits object is very large and complicated because it needs
to support writes to update changes, validate commits, close commits,
send email notifications, etc. Sending the advertisement of a handful
of recent changes so clients can avoid uploading too many objects does
not require any of that logic.
Move the history advertisement hack into the hook, simplifying the
logic flow for setting up the ReceivePack to speak with the client.
A future commit can now more easily remove the need to create
ReceiveCommits during an /info/refs request over HTTP.
Change-Id: Ic73a8b6a287bdb4e83021e499b382bc2b281ea33