Regen all docs. (#700)

* Stop recursing if discovery == {}

* Generate docs with 'make docs'.
diff --git a/docs/dyn/jobs_v3.projects.html b/docs/dyn/jobs_v3.projects.html
new file mode 100644
index 0000000..2dbb0ff
--- /dev/null
+++ b/docs/dyn/jobs_v3.projects.html
@@ -0,0 +1,200 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="jobs_v3.html">Cloud Talent Solution API</a> . <a href="jobs_v3.projects.html">projects</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="jobs_v3.projects.clientEvents.html">clientEvents()</a></code>
+</p>
+<p class="firstline">Returns the clientEvents Resource.</p>
+
+<p class="toc_element">
+  <code><a href="jobs_v3.projects.companies.html">companies()</a></code>
+</p>
+<p class="firstline">Returns the companies Resource.</p>
+
+<p class="toc_element">
+  <code><a href="jobs_v3.projects.jobs.html">jobs()</a></code>
+</p>
+<p class="firstline">Returns the jobs Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#complete">complete(name, languageCode=None, pageSize=None, languageCodes=None, query=None, x__xgafv=None, scope=None, type=None, companyName=None)</a></code></p>
+<p class="firstline">Completes the specified prefix with keyword suggestions.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="complete">complete(name, languageCode=None, pageSize=None, languageCodes=None, query=None, x__xgafv=None, scope=None, type=None, companyName=None)</code>
+  <pre>Completes the specified prefix with keyword suggestions.
+Intended for use by a job search auto-complete search box.
+
+Args:
+  name: string, Required.
+
+Resource name of project the completion is performed within.
+
+The format is "projects/{project_id}", for example,
+"projects/api-test-project". (required)
+  languageCode: string, Deprecated. Use language_codes instead.
+
+Optional.
+
+The language of the query. This is
+the BCP-47 language code, such as "en-US" or "sr-Latn".
+For more information, see
+[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
+
+For CompletionType.JOB_TITLE type, only open jobs with the same
+language_code are returned.
+
+For CompletionType.COMPANY_NAME type,
+only companies having open jobs with the same language_code are
+returned.
+
+For CompletionType.COMBINED type, only open jobs with the same
+language_code or companies having open jobs with the same
+language_code are returned.
+
+The maximum number of allowed characters is 255.
+  pageSize: integer, Required.
+
+Completion result count.
+
+The maximum allowed page size is 10.
+  languageCodes: string, Optional.
+
+The list of languages of the query. This is
+the BCP-47 language code, such as "en-US" or "sr-Latn".
+For more information, see
+[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
+
+For CompletionType.JOB_TITLE type, only open jobs with the same
+language_codes are returned.
+
+For CompletionType.COMPANY_NAME type,
+only companies having open jobs with the same language_codes are
+returned.
+
+For CompletionType.COMBINED type, only open jobs with the same
+language_codes or companies having open jobs with the same
+language_codes are returned.
+
+The maximum number of allowed characters is 255. (repeated)
+  query: string, Required.
+
+The query used to generate suggestions.
+
+The maximum number of allowed characters is 255.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+  scope: string, Optional.
+
+The scope of the completion. The defaults is CompletionScope.PUBLIC.
+  type: string, Optional.
+
+The completion topic. The default is CompletionType.COMBINED.
+  companyName: string, Optional.
+
+If provided, restricts completion to specified company.
+
+The format is "projects/{project_id}/companies/{company_id}", for example,
+"projects/api-test-project/companies/foo".
+
+Returns:
+  An object of the form:
+
+    { # Output only.
+      #
+      # Response of auto-complete query.
+    "completionResults": [ # Results of the matching job/company candidates.
+      { # Output only.
+          #
+          # Resource that represents completion results.
+        "type": "A String", # The completion topic.
+        "suggestion": "A String", # The suggestion for the query.
+        "imageUri": "A String", # The URI of the company image for CompletionType.COMPANY_NAME.
+      },
+    ],
+    "metadata": { # Output only. # Additional information for the API invocation, such as the request
+        # tracking id.
+        #
+        # Additional information returned to client, such as debugging information.
+      "requestId": "A String", # A unique id associated with this call.
+          # This id is logged for tracking purposes.
+    },
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file