use gogoprotobuf

This is just a place holder. This branch has a patch to switch to using gogoprotobuf instead of goprotobuf. I didn't notice any noticeable difference in speed, so let's hold off on merging this pr for the time being.