Add class annotation to HTML templates for different kinds of entities (#1929)

Tools like Dashing (used to create offline docs for Dash/Zeal) use CSS descriptors to index the different entities so that they can search for them and display them in a menu. Since the library and class types now use the same CSS in dartdoc, that made it impossible to differentiate between libraries and classes.

This PR adds some (empty) CSS classes in spans around the names of the entities, so that it's easy to explicitly find the name of the entity for each type in the HTML output.

I didn't use the `{{kind}}` template parameter because it sometimes contains spaces.

Addresses [flutter/flutter#27654](https://github.com/flutter/flutter/issues/27654)
diff --git a/lib/templates/category.html b/lib/templates/category.html
index 4fb9d6f..a671a2a 100644
--- a/lib/templates/category.html
+++ b/lib/templates/category.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <h1>{{name}} {{kind}}</h1>
+      <h1><span class="kind-category">{{name}}</span> {{kind}}</h1>
       {{>documentation}}
 
       {{#hasPublicLibraries}}
diff --git a/lib/templates/class.html b/lib/templates/class.html
index 5ffe052..a9adc45 100644
--- a/lib/templates/class.html
+++ b/lib/templates/class.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{nameWithGenerics}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-class">{{{nameWithGenerics}}}</span> {{kind}} {{>categorization}}</h1></div>
     {{/self}}
 
     {{#clazz}}
diff --git a/lib/templates/constant.html b/lib/templates/constant.html
index f54d3a8..44e278b 100644
--- a/lib/templates/constant.html
+++ b/lib/templates/constant.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{name}}} {{kind}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-constant">{{{name}}}</span> {{kind}}</h1></div>
     {{/self}}
 
     <section class="multi-line-signature">
diff --git a/lib/templates/constructor.html b/lib/templates/constructor.html
index bf7f610..3fc1a9f 100644
--- a/lib/templates/constructor.html
+++ b/lib/templates/constructor.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{nameWithGenerics}}} {{kind}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-constructor">{{{nameWithGenerics}}}</span> {{kind}}</h1></div>
     {{/self}}
 
     {{#constructor}}
diff --git a/lib/templates/enum.html b/lib/templates/enum.html
index 424b8bf..497f796 100644
--- a/lib/templates/enum.html
+++ b/lib/templates/enum.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{name}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-enum">{{{name}}}</span> {{kind}} {{>categorization}}</h1></div>
     {{/self}}
 
     {{#eNum}}
diff --git a/lib/templates/function.html b/lib/templates/function.html
index f7a42e0..a8d9c85 100644
--- a/lib/templates/function.html
+++ b/lib/templates/function.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{nameWithGenerics}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-function">{{{nameWithGenerics}}}</span> {{kind}} {{>categorization}}</h1></div>
     {{/self}}
 
     {{#function}}
diff --git a/lib/templates/library.html b/lib/templates/library.html
index 67ba592..1aa24b2 100644
--- a/lib/templates/library.html
+++ b/lib/templates/library.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{name}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-library">{{{name}}}</span> {{kind}} {{>categorization}}</h1></div>
     {{/self}}
 
     {{#library}}
diff --git a/lib/templates/method.html b/lib/templates/method.html
index 1a8aec7..0d1fb44 100644
--- a/lib/templates/method.html
+++ b/lib/templates/method.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{nameWithGenerics}}} {{kind}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-method">{{{nameWithGenerics}}}</span> {{kind}}</h1></div>
     {{/self}}
 
     {{#method}}
diff --git a/lib/templates/mixin.html b/lib/templates/mixin.html
index ff9bf0f..ddf7435 100644
--- a/lib/templates/mixin.html
+++ b/lib/templates/mixin.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{{nameWithGenerics}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-mixin">{{{nameWithGenerics}}}</span> {{kind}} {{>categorization}}</h1></div>
     {{/self}}
 
     {{#mixin}}
diff --git a/lib/templates/property.html b/lib/templates/property.html
index e6d77b9..8d9bb5e 100644
--- a/lib/templates/property.html
+++ b/lib/templates/property.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-      <div>{{>source_link}}<h1>{{name}} {{kind}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-property">{{name}}</span> {{kind}}</h1></div>
     {{/self}}
 
     {{#self}}
diff --git a/lib/templates/top_level_constant.html b/lib/templates/top_level_constant.html
index 41e7854..ccd3f66 100644
--- a/lib/templates/top_level_constant.html
+++ b/lib/templates/top_level_constant.html
@@ -8,17 +8,16 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-    <div>{{>source_link}}<h1>{{{name}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-top-level-constant">{{{name}}}</span> {{kind}} {{>categorization}}</h1></div>
 
-    <section class="multi-line-signature">
-      {{>name_summary}}
-      =
-      <span class="constant-value">{{{ constantValue }}}</span>
-      {{>features}}
-    </section>
-
-    {{>documentation}}
-    {{>source_code}}
+      <section class="multi-line-signature">
+        {{>name_summary}}
+        =
+        <span class="constant-value">{{{ constantValue }}}</span>
+        {{>features}}
+      </section>
+      {{>documentation}}
+      {{>source_code}}
     {{/self}}
 
   </div> <!-- /.main-content -->
diff --git a/lib/templates/top_level_property.html b/lib/templates/top_level_property.html
index 582d78e..2f41779 100644
--- a/lib/templates/top_level_property.html
+++ b/lib/templates/top_level_property.html
@@ -8,25 +8,25 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-    <div>{{>source_link}}<h1>{{{name}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-top-level-property">{{{name}}}</span> {{kind}} {{>categorization}}</h1></div>
 
-    {{#hasNoGetterSetter}}
-    <section class="multi-line-signature">
-      <span class="returntype">{{{ linkedReturnType }}}</span>
-      {{>name_summary}}
-      {{>features}}
-    </section>
-    {{>documentation}}
-    {{>source_code}}
-    {{/hasNoGetterSetter}}
+      {{#hasNoGetterSetter}}
+        <section class="multi-line-signature">
+          <span class="returntype">{{{ linkedReturnType }}}</span>
+          {{>name_summary}}
+          {{>features}}
+        </section>
+        {{>documentation}}
+        {{>source_code}}
+      {{/hasNoGetterSetter}}
 
-    {{#hasExplicitGetter}}
-    {{>accessor_getter}}
-    {{/hasExplicitGetter}}
+      {{#hasExplicitGetter}}
+        {{>accessor_getter}}
+      {{/hasExplicitGetter}}
 
-    {{#hasExplicitSetter}}
-    {{>accessor_setter}}
-    {{/hasExplicitSetter}}
+      {{#hasExplicitSetter}}
+        {{>accessor_setter}}
+      {{/hasExplicitSetter}}
     {{/self}}
   </div> <!-- /.main-content -->
 
diff --git a/lib/templates/typedef.html b/lib/templates/typedef.html
index 336fcf6..2fcbe00 100644
--- a/lib/templates/typedef.html
+++ b/lib/templates/typedef.html
@@ -8,7 +8,7 @@
 
   <div id="dartdoc-main-content" class="col-xs-12 col-sm-9 col-md-8 main-content">
     {{#self}}
-    <div>{{>source_link}}<h1>{{{nameWithGenerics}}} {{kind}} {{>categorization}}</h1></div>
+      <div>{{>source_link}}<h1><span class="kind-typedef">{{{nameWithGenerics}}}</span> {{kind}} {{>categorization}}</h1></div>
     {{/self}}
 
     <section class="multi-line-signature">