Added string array support to ESJsonEncoder

This is a quick tweak to allow ESJsonEncoder to handle multiple string values.
This case statement and a lot of the duplicate logic can go away.  A single WriteField(first bool, b *bytes.Buffer, f *message.Field, raw bool) function could work for everything; writeStringField, writeRawArrayField, writeRawField could all go away