Merge changes Iefa0b041,I7d1126da,I3aeb6c51,I87fd580b,I24b2d2ba, ...

* changes:
  Fix -hideAnnotation
  Correctly stub classes with hidden constructors
  Write annotations for Enum fields.
  Add -keepstubcomments flag to Doclava.
  Don't include 'toroot' path if the links are federated.
  Escape space chars in anchor tags, remove legacy <a> tags for anchors, and cleanup legacy DAC markup.
  Restore the book/project meta tags used for trade federation docs bug: 70171848 Test: make tradefed-docs
  subcount() no longer works for strings.
  Update all expando widgets to use devsite's expandable.
  add data-version-added and -deprecated attributes.
  replace obsolete logic for meta tags with include provided by devsite, and add data attributes to the ReferenceObject itemprop tag that carry api level information for the future version of the API level selector. Note that if the build specifies 'library.root' then that is still used to specify the _book.yaml location in a django variable. This way, we still have control from the DevSite include as to whether we use it.
  Update doclava template to include ReferenceObject meta data for devsite but only include the 'path' information for DAC docs because I'm not sure how other projects want to use that field https://developers.google.com/internal/publishing/reference/microdata/referenceobject bug: 62869488
  Fully-qualify link labels outside current class.
  Remove obsolete doclava tasks now that DAC is fully running on devsite (irina)
  Add quotes and don't include 'version_added' if there's no 'since' info
  Add support to build a full _book.yaml file for DAC reference. This creates a new version of writeYamlTree() to reproduce the nav structure used on d.android.com with all API links.
  Revert "Enable Doclava API check for changing the synchronized modifier"
  Add a new error type for added abstract methods.
  Added -new_api_no_strip command line option