Add FeatureGroup to PackageInfo

FeatureGroups replace top-level FeatureInfo objects.
FeatureGroups inherit top-level FeatureInfos but override
them if the feature names are the same.

Bug:16822121

Change-Id: I80b2cb778a0fbcb4521efce986fba641e0914290
diff --git a/tools/aapt/Command.cpp b/tools/aapt/Command.cpp
index 41102fe..3738a29 100644
--- a/tools/aapt/Command.cpp
+++ b/tools/aapt/Command.cpp
@@ -1676,12 +1676,8 @@
 
                         String8 name = getResolvedAttribute(&res, tree, NAME_ATTR, &error);
                         if (name != "" && error == "") {
-                            int required = getIntegerAttribute(tree, REQUIRED_ATTR, NULL, 1);
-                            top.features.add(name, required);
-                            if (required) {
-                                addParentFeatures(&top, name);
-                            }
-
+                            top.features.add(name, true);
+                            addParentFeatures(&top, name);
                         } else {
                             int vers = getIntegerAttribute(tree, GL_ES_VERSION_ATTR, &error);
                             if (error == "") {