This is a second attempt at submitting https://golang.org/cl/3420043 A Mercurial problem lost the new files in that submit. TBR=r CC=golang-dev https://golang.org/cl/3511043