Rewrite outgoing email to be more user friendly This rewrite splits the code down into message specific subclasses, and resolves a whole slew of problems filed against the old sending code. The old code was so bad, it really was just easier to do a full rewrite of it. Bug: GERRIT-125 Bug: GERRIT-133 Bug: GERRIT-140 Bug: GERRIT-147 Bug: GERRIT-149 Bug: GERRIT-157 Bug: GERRIT-158 Bug: GERRIT-159 Bug: GERRIT-180 Signed-off-by: Shawn O. Pearce <sop@google.com>