Cts Feature/Profile Annotations

Add annotations that allow CTS to be used for multiple device
profiles.

Example is shown in ProfileTest.java.

1. @SupportedProfiles - run the test only if the device's profile is
   the one passed via the "--profile" flag to CTS like:

   startcts --plan CTS --profile HANDHELD
   startcts --plan CTS --profile STB

2. @RequiredFeatures - run the test only if the device's
   PackageManager reports the features needed by the test. For
   instance tag wifi tests with this annotation's value set to
   the wifi feature to only run it on devices that declare the
   feature.

If not specified, the profile will be set to ALL, which means run all
the tests.

This creates an additional library for CTS test annotations, so this
will require a change to the build/core/cts.mk project too. A new
Makefile "CtsHostLibraryList.mk" can be used now to have the host
use additional libraries.

Change-Id: I69d76b65569160648020306fe14c94242d99efc1
35 files changed