Save memory by re-using empty TagInfo (and subclasses) arrays.

Arrays of TagInfo (and subclasses) often tend to be empty, as many
members simply won't have any of the relevant tags.
Re-using empty arrays saves potentially a dozen or more megabytes
for large projects.

Also some minor performance tweaks the Javadoc comment parsing.

Change-Id: Iffaddd3b59a4f8183f11efd6e2680aad95633ade
diff --git a/src/com/google/doclava/AttrTagInfo.java b/src/com/google/doclava/AttrTagInfo.java
index 909cacf..04e5626 100644
--- a/src/com/google/doclava/AttrTagInfo.java
+++ b/src/com/google/doclava/AttrTagInfo.java
@@ -22,6 +22,12 @@
 import java.util.regex.Matcher;
 
 public class AttrTagInfo extends TagInfo {
+  public static final AttrTagInfo[] EMPTY_ARRAY = new AttrTagInfo[0];
+
+  public static AttrTagInfo[] getArray(int size) {
+      return size == 0 ? EMPTY_ARRAY : new AttrTagInfo[size];
+  }
+
   private static final String REF_COMMAND = "ref";
   private static final String NAME_COMMAND = "name";
   private static final String DESCRIPTION_COMMAND = "description";