throughout: replace bytes.Add and bytes.AddByte with calls to append

R=gri
CC=golang-dev
http://codereview.appspot.com/3418041
diff --git a/compiler/generator/generator.go b/compiler/generator/generator.go
index 1a7ba8f..f6b6c25 100644
--- a/compiler/generator/generator.go
+++ b/compiler/generator/generator.go
@@ -1059,12 +1059,10 @@
 		return ""
 	}
 	t := make([]byte, 0, 32)
-	oneC := make([]byte, 1)
 	i := 0
 	if s[0] == '_' {
 		// Need a capital letter; drop the '_'.
-		oneC[0] = 'X'
-		t = bytes.Add(t, oneC)
+		t = append(t, 'X')
 		i++
 	}
 	// Invariant: if the next letter is lower case, it must be converted
@@ -1073,25 +1071,23 @@
 	// upper case letter. Digits are treated as words.
 	for ; i < len(s); i++ {
 		c := s[i]
-		oneC[0] = c
 		if c == '_' && i+1 < len(s) && isASCIILower(s[i+1]) {
 			continue // Skip the underscore in s.
 		}
 		if isASCIIDigit(c) {
-			t = bytes.Add(t, oneC)
+			t = append(t, c)
 			continue
 		}
 		// Assume we have a letter now - if not, it's a bogus identifier.
 		// The next word is a sequence of characters that must start upper case.
 		if isASCIILower(c) {
-			oneC[0] ^= ' ' // Make it a capital letter.
+			c ^= ' ' // Make it a capital letter.
 		}
-		t = bytes.Add(t, oneC) // Guaranteed not lower case.
+		t = append(t, c) // Guaranteed not lower case.
 		// Accept lower case sequence that follows.
 		for i+1 < len(s) && isASCIILower(s[i+1]) {
 			i++
-			oneC[0] = s[i]
-			t = bytes.Add(t, oneC)
+			t = append(t, s[i])
 		}
 	}
 	return string(t)