diff --git a/Makefile b/Makefile
index d85f38c344098ba08fc83e5403a280a81c798111..5ef44b222779fdf3ca130bfe19dc61b50afd75b9 100644
--- a/Makefile
+++ b/Makefile
@@ -87,11 +87,11 @@ protoc:
 
 .PHONY: docs
 docs: build
-	@mkdir -p docs/helm docs/man/man1
-	bin/helm docs --dir ./docs/helm
-	bin/helm docs --dir ./docs/man/man1 --type man
-	bin/helm docs --dir ./scripts --type bash
-	scripts/docs-clean-home.sh
+	@scripts/update-docs.sh
+
+.PHONY: verify-docs
+verify-docs: build
+	@scripts/verify-docs.sh
 
 .PHONY: clean
 clean:
diff --git a/circle.yml b/circle.yml
index a8fc8a1a3de0757c00fc6193d8c444b83e0f7adf..46b1bee3dd088745495a07ffc7c5255f349a3131 100644
--- a/circle.yml
+++ b/circle.yml
@@ -3,7 +3,7 @@ machine:
     - curl -sSL https://s3.amazonaws.com/circle-downloads/install-circleci-docker.sh | bash -s -- 1.10.0
 
   environment:
-    GOVERSION: "1.7.4"
+    GOVERSION: "1.7.5"
     GOPATH:  "${HOME}/.go_workspace"
     WORKDIR: "${GOPATH}/src/k8s.io/helm"
     PROJECT_NAME: "kubernetes-helm"
diff --git a/docs/helm/helm.md b/docs/helm/helm.md
index 4c1ddef034f5b5f6b38fe78b9747eda495e24367..33ee4f20073f5e623c58f23d393029a336bb9256 100644
--- a/docs/helm/helm.md
+++ b/docs/helm/helm.md
@@ -54,15 +54,19 @@ Environment:
 * [helm lint](helm_lint.md)	 - examines a chart for possible issues
 * [helm list](helm_list.md)	 - list releases
 * [helm package](helm_package.md)	 - package a chart directory into a chart archive
+* [helm plugin](helm_plugin.md)	 - add, list, or remove Helm plugins
 * [helm repo](helm_repo.md)	 - add, list, remove, update, and index chart repositories
 * [helm reset](helm_reset.md)	 - uninstalls Tiller from a cluster
+* [helm reset](helm_reset.md)	 - uninstalls Tiller from a cluster
 * [helm rollback](helm_rollback.md)	 - roll back a release to a previous revision
 * [helm search](helm_search.md)	 - search for a keyword in charts
 * [helm serve](helm_serve.md)	 - start a local http web server
 * [helm status](helm_status.md)	 - displays the status of the named release
 * [helm test](helm_test.md)	 - test a release
+* [helm test](helm_test.md)	 - test a release
 * [helm upgrade](helm_upgrade.md)	 - upgrade a release
 * [helm verify](helm_verify.md)	 - verify that a chart at the given path has been signed and is valid
 * [helm version](helm_version.md)	 - print the client/server version information
+* [helm version](helm_version.md)	 - print the client/server version information
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_delete.md b/docs/helm/helm_delete.md
index b5abd4c166017a078ca959d19e589e1f91251177..52fff4fa1022877241c5464844315121848a7885 100644
--- a/docs/helm/helm_delete.md
+++ b/docs/helm/helm_delete.md
@@ -20,10 +20,15 @@ helm delete [flags] RELEASE_NAME [...]
 ### Options
 
 ```
-      --dry-run       simulate a delete
-      --no-hooks      prevent hooks from running during deletion
-      --purge         remove the release from the store and make its name free for later use
-      --timeout int   time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
+      --dry-run              simulate a delete
+      --no-hooks             prevent hooks from running during deletion
+      --purge                remove the release from the store and make its name free for later use
+      --timeout int          time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -39,4 +44,4 @@ helm delete [flags] RELEASE_NAME [...]
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_dependency.md b/docs/helm/helm_dependency.md
index c2a46e39e7ee69dbc50b61811759938917ce836f..1156705da6f2d19b9fed03b181bbbb146ea4e649 100644
--- a/docs/helm/helm_dependency.md
+++ b/docs/helm/helm_dependency.md
@@ -24,10 +24,10 @@ For example, this requirements file declares two dependencies:
     dependencies:
     - name: nginx
       version: "1.2.3"
-    repository: "https://example.com/charts"
+      repository: "https://example.com/charts"
     - name: memcached
       version: "3.2.1"
-    repository: "https://another.example.com/charts"
+      repository: "https://another.example.com/charts"
 
 The 'name' should be the name of a chart, where that name must match the name
 in that chart's 'Chart.yaml' file.
@@ -36,20 +36,8 @@ The 'version' field should contain a semantic version or version range.
 
 The 'repository' URL should point to a Chart Repository. Helm expects that by
 appending '/index.yaml' to the URL, it should be able to retrieve the chart
-repository's index.
-
-A repository can also be represented by a repository name defined in the index file
-in lieu of a repository URL. If a repository alias is used, it is expected to start with
-'alias:' or '@', followed by a repository name. For example,
-    # requirements.yaml
-    dependencies:
-    - name: nginx
-      version: "1.2.3"
-      repository: "alias:stable"
-
-Note: In the above example, if the '@' syntax is used, the repository alias '@stable'
-must be quoted, as YAML requires to use quotes if the value includes a special character
-like '@'.
+repository's index. Note: 'repository' cannot be a repository alias. It must be
+a URL.
 
 Starting from 2.2.0, repository can be defined as the path to the directory of
 the dependency charts stored locally. The path should start with a prefix of
@@ -65,6 +53,7 @@ If the dependency chart is retrieved locally, it is not required to have the
 repository added to helm by "helm add repo". Version matching is also supported
 for this case.
 
+
 ### Options inherited from parent commands
 
 ```
@@ -81,4 +70,4 @@ for this case.
 * [helm dependency list](helm_dependency_list.md)	 - list the dependencies for the given chart
 * [helm dependency update](helm_dependency_update.md)	 - update charts/ based on the contents of requirements.yaml
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_get.md b/docs/helm/helm_get.md
index 824bad9a6c3900c9e6145aaa37259c7644c3729f..fc334ed7dee9885e0c04222b668fc940f4f2d808 100644
--- a/docs/helm/helm_get.md
+++ b/docs/helm/helm_get.md
@@ -25,7 +25,12 @@ helm get [flags] RELEASE_NAME
 ### Options
 
 ```
-      --revision int32   get the named release with revision
+      --revision int32       get the named release with revision
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -44,4 +49,4 @@ helm get [flags] RELEASE_NAME
 * [helm get manifest](helm_get_manifest.md)	 - download the manifest for a named release
 * [helm get values](helm_get_values.md)	 - download the values file for a named release
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_history.md b/docs/helm/helm_history.md
index 24677658c9ad0242d8801d66b1067b2fd7ff6d0b..d6df08b83708b0795015a5d525477be68e71a2f0 100644
--- a/docs/helm/helm_history.md
+++ b/docs/helm/helm_history.md
@@ -28,7 +28,12 @@ helm history [flags] RELEASE_NAME
 ### Options
 
 ```
-      --max int32   maximum number of revision to include in history (default 256)
+      --max int32            maximum number of revision to include in history (default 256)
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -44,4 +49,4 @@ helm history [flags] RELEASE_NAME
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_init.md b/docs/helm/helm_init.md
index a5b970ebd14b90fa60340a34382dac419361e969..9e57ba4db86f97071ec4af327f10a532e6c54650 100644
--- a/docs/helm/helm_init.md
+++ b/docs/helm/helm_init.md
@@ -33,11 +33,17 @@ helm init
 ### Options
 
 ```
-      --canary-image          use the canary tiller image
-  -c, --client-only           if set does not install tiller
-      --dry-run               do not install local or remote
-  -i, --tiller-image string   override tiller image
-      --upgrade               upgrade if tiller is already installed
+      --canary-image             use the canary tiller image
+  -c, --client-only              if set does not install tiller
+      --dry-run                  do not install local or remote
+      --skip-refresh             do not refresh (download) the local repository cache
+  -i, --tiller-image string      override tiller image
+      --tiller-tls               install tiller with TLS enabled
+      --tiller-tls-cert string   path to TLS certificate file to install with tiller
+      --tiller-tls-key string    path to TLS key file to install with tiller
+      --tiller-tls-verify        install tiller with TLS enabled and to verify remote certificates
+      --tls-ca-cert string       path to CA root certificate
+      --upgrade                  upgrade if tiller is already installed
 ```
 
 ### Options inherited from parent commands
@@ -53,4 +59,4 @@ helm init
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_install.md b/docs/helm/helm_install.md
index 2da6c576a60aa4cd38be9b262610d8cc6c070c99..7ae886aa85cb04438a86aec2dcda9345c5ace380 100644
--- a/docs/helm/helm_install.md
+++ b/docs/helm/helm_install.md
@@ -77,10 +77,15 @@ helm install [CHART]
       --replace                re-use the given name, even if that name is already used. This is unsafe in production
       --set stringArray        set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
       --timeout int            time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
+      --tls                    enable TLS for request
+      --tls-ca-cert string     path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string        path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string         path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify             enable TLS for request and verify remote
   -f, --values valueFiles      specify values in a YAML file (can specify multiple) (default [])
       --verify                 verify the package before installing it
       --version string         specify the exact chart version to install. If this is not specified, the latest version is installed
-      --wait                   if set, will wait until all Pods, PVCs, and Services are in a ready state before marking the release as successful. It will wait for as long as --timeout
+      --wait                   if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout
 ```
 
 ### Options inherited from parent commands
@@ -96,4 +101,4 @@ helm install [CHART]
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_list.md b/docs/helm/helm_list.md
index f1427b81a92f816e3b9df1da82a35eb8dfadb06f..622c0700a4b377dddcad262c1af3c198737d9892 100644
--- a/docs/helm/helm_list.md
+++ b/docs/helm/helm_list.md
@@ -39,17 +39,22 @@ helm list [flags] [FILTER]
 ### Options
 
 ```
-      --all                show all releases, not just the ones marked DEPLOYED
-  -d, --date               sort by release date
-      --deleted            show deleted releases
-      --deleting           show releases that are currently being deleted
-      --deployed           show deployed releases. If no other is specified, this will be automatically enabled
-      --failed             show failed releases
-  -m, --max int            maximum number of releases to fetch (default 256)
-      --namespace string   show releases within a specific namespace
-  -o, --offset string      next release name in the list, used to offset from start value
-  -r, --reverse            reverse the sort order
-  -q, --short              output short (quiet) listing format
+      --all                  show all releases, not just the ones marked DEPLOYED
+  -d, --date                 sort by release date
+      --deleted              show deleted releases
+      --deleting             show releases that are currently being deleted
+      --deployed             show deployed releases. If no other is specified, this will be automatically enabled
+      --failed               show failed releases
+  -m, --max int              maximum number of releases to fetch (default 256)
+      --namespace string     show releases within a specific namespace
+  -o, --offset string        next release name in the list, used to offset from start value
+  -r, --reverse              reverse the sort order
+  -q, --short                output short (quiet) listing format
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -65,4 +70,4 @@ helm list [flags] [FILTER]
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_package.md b/docs/helm/helm_package.md
index 1a83b136ec12e5f879c1c7cb825198d78c596847..9b524c6d5cf66e4c19c2c52802fadeda0960efe3 100644
--- a/docs/helm/helm_package.md
+++ b/docs/helm/helm_package.md
@@ -23,11 +23,12 @@ helm package [flags] [CHART_PATH] [...]
 ### Options
 
 ```
-      --key string       name of the key to use when signing. Used if --sign is true
-      --keyring string   location of a public keyring (default "~/.gnupg/pubring.gpg")
-      --save             save packaged chart to local chart repository (default true)
-      --sign             use a PGP private key to sign this package
-      --version string   set the version on the chart to this semver version
+  -d, --destination string   location to write the chart. (default ".")
+      --key string           name of the key to use when signing. Used if --sign is true
+      --keyring string       location of a public keyring (default "~/.gnupg/pubring.gpg")
+      --save                 save packaged chart to local chart repository (default true)
+      --sign                 use a PGP private key to sign this package
+      --version string       set the version on the chart to this semver version
 ```
 
 ### Options inherited from parent commands
@@ -43,4 +44,4 @@ helm package [flags] [CHART_PATH] [...]
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_plugin.md b/docs/helm/helm_plugin.md
new file mode 100644
index 0000000000000000000000000000000000000000..d224a9f7e0740b28899974504c92da67f8e23cd1
--- /dev/null
+++ b/docs/helm/helm_plugin.md
@@ -0,0 +1,28 @@
+## helm plugin
+
+add, list, or remove Helm plugins
+
+### Synopsis
+
+
+
+Manage client-side Helm plugins.
+
+
+### Options inherited from parent commands
+
+```
+      --debug                     enable verbose output
+      --home string               location of your Helm config. Overrides $HELM_HOME (default "~/.helm")
+      --host string               address of tiller. Overrides $HELM_HOST
+      --kube-context string       name of the kubeconfig context to use
+      --tiller-namespace string   namespace of tiller (default "kube-system")
+```
+
+### SEE ALSO
+* [helm](helm.md)	 - The Helm package manager for Kubernetes.
+* [helm plugin install](helm_plugin_install.md)	 - install one or more Helm plugins
+* [helm plugin list](helm_plugin_list.md)	 - list installed Helm plugins
+* [helm plugin remove](helm_plugin_remove.md)	 - remove one or more Helm plugins
+
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_plugin_install.md b/docs/helm/helm_plugin_install.md
new file mode 100644
index 0000000000000000000000000000000000000000..c81f1f8e5feed0cd39cd75e4e75a3df7a5fd418f
--- /dev/null
+++ b/docs/helm/helm_plugin_install.md
@@ -0,0 +1,33 @@
+## helm plugin install
+
+install one or more Helm plugins
+
+### Synopsis
+
+
+install one or more Helm plugins
+
+```
+helm plugin install [options] <path|url>...
+```
+
+### Options
+
+```
+      --version string   specify a version constraint. If this is not specified, the latest version is installed
+```
+
+### Options inherited from parent commands
+
+```
+      --debug                     enable verbose output
+      --home string               location of your Helm config. Overrides $HELM_HOME (default "~/.helm")
+      --host string               address of tiller. Overrides $HELM_HOST
+      --kube-context string       name of the kubeconfig context to use
+      --tiller-namespace string   namespace of tiller (default "kube-system")
+```
+
+### SEE ALSO
+* [helm plugin](helm_plugin.md)	 - add, list, or remove Helm plugins
+
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_plugin_list.md b/docs/helm/helm_plugin_list.md
new file mode 100644
index 0000000000000000000000000000000000000000..4cb02287064ac1399d78efd3b108a81f17a4b177
--- /dev/null
+++ b/docs/helm/helm_plugin_list.md
@@ -0,0 +1,27 @@
+## helm plugin list
+
+list installed Helm plugins
+
+### Synopsis
+
+
+list installed Helm plugins
+
+```
+helm plugin list
+```
+
+### Options inherited from parent commands
+
+```
+      --debug                     enable verbose output
+      --home string               location of your Helm config. Overrides $HELM_HOME (default "~/.helm")
+      --host string               address of tiller. Overrides $HELM_HOST
+      --kube-context string       name of the kubeconfig context to use
+      --tiller-namespace string   namespace of tiller (default "kube-system")
+```
+
+### SEE ALSO
+* [helm plugin](helm_plugin.md)	 - add, list, or remove Helm plugins
+
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_plugin_remove.md b/docs/helm/helm_plugin_remove.md
new file mode 100644
index 0000000000000000000000000000000000000000..ea21f17623df780efb7a87b1db2ed97d527be137
--- /dev/null
+++ b/docs/helm/helm_plugin_remove.md
@@ -0,0 +1,27 @@
+## helm plugin remove
+
+remove one or more Helm plugins
+
+### Synopsis
+
+
+remove one or more Helm plugins
+
+```
+helm plugin remove <plugin>...
+```
+
+### Options inherited from parent commands
+
+```
+      --debug                     enable verbose output
+      --home string               location of your Helm config. Overrides $HELM_HOME (default "~/.helm")
+      --host string               address of tiller. Overrides $HELM_HOST
+      --kube-context string       name of the kubeconfig context to use
+      --tiller-namespace string   namespace of tiller (default "kube-system")
+```
+
+### SEE ALSO
+* [helm plugin](helm_plugin.md)	 - add, list, or remove Helm plugins
+
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_reset.md b/docs/helm/helm_reset.md
index b817ef79fb6cfc429fa3676eaafa4517524f1c05..73bfc74e8fb837b72c0a5607d3566e7ea63f85b2 100644
--- a/docs/helm/helm_reset.md
+++ b/docs/helm/helm_reset.md
@@ -18,8 +18,13 @@ helm reset
 ### Options
 
 ```
-  -f, --force              forces Tiller uninstall even if there are releases installed
-      --remove-helm-home   if set deletes $HELM_HOME
+  -f, --force                forces Tiller uninstall even if there are releases installed
+      --remove-helm-home     if set deletes $HELM_HOME
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -35,4 +40,4 @@ helm reset
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_rollback.md b/docs/helm/helm_rollback.md
index 95e1ac19ded2a34b7fe96792f1e8c78a358b472d..425936a58076c1d0fedc779bbf919c0454455b38 100644
--- a/docs/helm/helm_rollback.md
+++ b/docs/helm/helm_rollback.md
@@ -20,11 +20,16 @@ helm rollback [flags] [RELEASE] [REVISION]
 ### Options
 
 ```
-      --dry-run         simulate a rollback
-      --no-hooks        prevent hooks from running during rollback
-      --recreate-pods   performs pods restart for the resource if applicable
-      --timeout int     time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
-      --wait            if set, will wait until all Pods, PVCs, and Services are in a ready state before marking the release as successful. It will wait for as long as --timeout
+      --dry-run              simulate a rollback
+      --no-hooks             prevent hooks from running during rollback
+      --recreate-pods        performs pods restart for the resource if applicable
+      --timeout int          time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
+      --wait                 if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout
 ```
 
 ### Options inherited from parent commands
@@ -40,4 +45,4 @@ helm rollback [flags] [RELEASE] [REVISION]
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_status.md b/docs/helm/helm_status.md
index 6402a49fee66fac6b57e044b340b878a7557d679..282ddaf638782a6808b4ace8122c0e9ac8687d15 100644
--- a/docs/helm/helm_status.md
+++ b/docs/helm/helm_status.md
@@ -23,7 +23,12 @@ helm status [flags] RELEASE_NAME
 ### Options
 
 ```
-      --revision int32   if set, display the status of the named release with revision
+      --revision int32       if set, display the status of the named release with revision
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -39,4 +44,4 @@ helm status [flags] RELEASE_NAME
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_upgrade.md b/docs/helm/helm_upgrade.md
index b1a611558543b1899f981fc82c744110c0666e9c..b49a035cf50f3cce3b4b3c5b14911fbead3e7430 100644
--- a/docs/helm/helm_upgrade.md
+++ b/docs/helm/helm_upgrade.md
@@ -36,19 +36,25 @@ helm upgrade [RELEASE] [CHART]
 ### Options
 
 ```
-      --dry-run             simulate an upgrade
-  -i, --install             if a release by this name doesn't already exist, run an install
-      --keyring string      path to the keyring that contains public signing keys (default "~/.gnupg/pubring.gpg")
-      --namespace string    namespace to install the release into (only used if --install is set) (default "default")
-      --no-hooks            disable pre/post upgrade hooks
-      --recreate-pods       performs pods restart for the resource if applicable
-      --reset-values        when upgrading, reset the values to the ones built into the chart
-      --set stringArray     set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
-      --timeout int         time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
-  -f, --values valueFiles   specify values in a YAML file (can specify multiple) (default [])
-      --verify              verify the provenance of the chart before upgrading
-      --version string      specify the exact chart version to use. If this is not specified, the latest version is used
-      --wait                if set, will wait until all Pods, PVCs, and Services are in a ready state before marking the release as successful. It will wait for as long as --timeout
+      --dry-run              simulate an upgrade
+  -i, --install              if a release by this name doesn't already exist, run an install
+      --keyring string       path to the keyring that contains public signing keys (default "~/.gnupg/pubring.gpg")
+      --namespace string     namespace to install the release into (only used if --install is set) (default "default")
+      --no-hooks             disable pre/post upgrade hooks
+      --recreate-pods        performs pods restart for the resource if applicable
+      --reset-values         when upgrading, reset the values to the ones built into the chart
+      --reuse-values         when upgrading, reuse the last release's values, and merge in any new values. If '--reset-values' is specified, this is ignored.
+      --set stringArray      set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
+      --timeout int          time in seconds to wait for any individual kubernetes operation (like Jobs for hooks) (default 300)
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
+  -f, --values valueFiles    specify values in a YAML file (can specify multiple) (default [])
+      --verify               verify the provenance of the chart before upgrading
+      --version string       specify the exact chart version to use. If this is not specified, the latest version is used
+      --wait                 if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout
 ```
 
 ### Options inherited from parent commands
@@ -64,4 +70,4 @@ helm upgrade [RELEASE] [CHART]
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/helm/helm_version.md b/docs/helm/helm_version.md
index a6580fed76fc77b644a3afab41fb3baa08ddc51e..ec536c54be4bb5c0c10fdb24d6e4d567240357e6 100644
--- a/docs/helm/helm_version.md
+++ b/docs/helm/helm_version.md
@@ -30,9 +30,14 @@ helm version
 ### Options
 
 ```
-  -c, --client   client version only
-  -s, --server   server version only
-      --short    print the version number
+  -c, --client               client version only
+  -s, --server               server version only
+      --short                print the version number
+      --tls                  enable TLS for request
+      --tls-ca-cert string   path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
+      --tls-cert string      path to TLS certificate file (default "$HELM_HOME/cert.pem")
+      --tls-key string       path to TLS key file (default "$HELM_HOME/key.pem")
+      --tls-verify           enable TLS for request and verify remote
 ```
 
 ### Options inherited from parent commands
@@ -48,4 +53,4 @@ helm version
 ### SEE ALSO
 * [helm](helm.md)	 - The Helm package manager for Kubernetes.
 
-###### Auto generated by spf13/cobra on 11-Mar-2017
+###### Auto generated by spf13/cobra on 12-Apr-2017
diff --git a/docs/man/man1/helm.1 b/docs/man/man1/helm.1
index f2f1dc1eebf857f7b161038170fb1cbb3c37d3f6..60e168fb623e2c7cde31eb798386f5b3c07c38d2 100644
--- a/docs/man/man1/helm.1
+++ b/docs/man/man1/helm.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -77,9 +77,9 @@ Environment:
 
 .SH SEE ALSO
 .PP
-\fBhelm\-completion(1)\fP, \fBhelm\-create(1)\fP, \fBhelm\-delete(1)\fP, \fBhelm\-dependency(1)\fP, \fBhelm\-fetch(1)\fP, \fBhelm\-get(1)\fP, \fBhelm\-history(1)\fP, \fBhelm\-home(1)\fP, \fBhelm\-init(1)\fP, \fBhelm\-inspect(1)\fP, \fBhelm\-install(1)\fP, \fBhelm\-lint(1)\fP, \fBhelm\-list(1)\fP, \fBhelm\-package(1)\fP, \fBhelm\-repo(1)\fP, \fBhelm\-reset(1)\fP, \fBhelm\-rollback(1)\fP, \fBhelm\-search(1)\fP, \fBhelm\-serve(1)\fP, \fBhelm\-status(1)\fP, \fBhelm\-test(1)\fP, \fBhelm\-upgrade(1)\fP, \fBhelm\-verify(1)\fP, \fBhelm\-version(1)\fP
+\fBhelm\-completion(1)\fP, \fBhelm\-create(1)\fP, \fBhelm\-delete(1)\fP, \fBhelm\-dependency(1)\fP, \fBhelm\-fetch(1)\fP, \fBhelm\-get(1)\fP, \fBhelm\-history(1)\fP, \fBhelm\-home(1)\fP, \fBhelm\-init(1)\fP, \fBhelm\-inspect(1)\fP, \fBhelm\-install(1)\fP, \fBhelm\-lint(1)\fP, \fBhelm\-list(1)\fP, \fBhelm\-package(1)\fP, \fBhelm\-plugin(1)\fP, \fBhelm\-repo(1)\fP, \fBhelm\-reset(1)\fP, \fBhelm\-reset(1)\fP, \fBhelm\-rollback(1)\fP, \fBhelm\-search(1)\fP, \fBhelm\-serve(1)\fP, \fBhelm\-status(1)\fP, \fBhelm\-test(1)\fP, \fBhelm\-test(1)\fP, \fBhelm\-upgrade(1)\fP, \fBhelm\-verify(1)\fP, \fBhelm\-version(1)\fP, \fBhelm\-version(1)\fP
 
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_delete.1 b/docs/man/man1/helm_delete.1
index e217426436f8eff1bf2ba358bb6edd529871c5fa..548e4885b6a3f3be76f1d04b694083c9df58b467 100644
--- a/docs/man/man1/helm_delete.1
+++ b/docs/man/man1/helm_delete.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -40,6 +40,26 @@ deleting them.
 \fB\-\-timeout\fP=300
     time in seconds to wait for any individual kubernetes operation (like Jobs for hooks)
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -70,4 +90,4 @@ deleting them.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_dependency.1 b/docs/man/man1/helm_dependency.1
index 55398bb743a655e7f6dc29fb752b827b401ef5bd..70da6f2b533b0fff89f1ca8cad7be1f6baf25430 100644
--- a/docs/man/man1/helm_dependency.1
+++ b/docs/man/man1/helm_dependency.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -40,10 +40,10 @@ For example, this requirements file declares two dependencies:
 dependencies:
 \- name: nginx
   version: "1.2.3"
-repository: "https://example.com/charts"
+  repository: "https://example.com/charts"
 \- name: memcached
   version: "3.2.1"
-repository: "https://another.example.com/charts"
+  repository: "https://another.example.com/charts"
 
 .fi
 .RE
@@ -114,4 +114,4 @@ for this case.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_get.1 b/docs/man/man1/helm_get.1
index 0746cde2ed9e6389d64d565749460229d70ed0ec..bbc8515cae8d7df78487b588ee28ab2a2d27c427 100644
--- a/docs/man/man1/helm_get.1
+++ b/docs/man/man1/helm_get.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -36,6 +36,26 @@ chart, the supplied values, and the generated manifest file.
 \fB\-\-revision\fP=0
     get the named release with revision
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -66,4 +86,4 @@ chart, the supplied values, and the generated manifest file.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_history.1 b/docs/man/man1/helm_history.1
index 2ad7a753a921d35d52b7efa1515ed0c18cd361f2..e4915c45a6f4cbf8fa10a0ab7d31a17a608fcf13 100644
--- a/docs/man/man1/helm_history.1
+++ b/docs/man/man1/helm_history.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -44,6 +44,26 @@ REVISION   UPDATED                      STATUS           CHART        DESCRIPTIO
 \fB\-\-max\fP=256
     maximum number of revision to include in history
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -74,4 +94,4 @@ REVISION   UPDATED                      STATUS           CHART        DESCRIPTIO
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_init.1 b/docs/man/man1/helm_init.1
index db8d03c4953db37fda316677d1dda84adb8702c4..d22aa56238f124c8140cd886c54658ddd48d565f 100644
--- a/docs/man/man1/helm_init.1
+++ b/docs/man/man1/helm_init.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -52,10 +52,34 @@ To dump a manifest containing the Tiller deployment YAML, combine the
 \fB\-\-dry\-run\fP[=false]
     do not install local or remote
 
+.PP
+\fB\-\-skip\-refresh\fP[=false]
+    do not refresh (download) the local repository cache
+
 .PP
 \fB\-i\fP, \fB\-\-tiller\-image\fP=""
     override tiller image
 
+.PP
+\fB\-\-tiller\-tls\fP[=false]
+    install tiller with TLS enabled
+
+.PP
+\fB\-\-tiller\-tls\-cert\fP=""
+    path to TLS certificate file to install with tiller
+
+.PP
+\fB\-\-tiller\-tls\-key\fP=""
+    path to TLS key file to install with tiller
+
+.PP
+\fB\-\-tiller\-tls\-verify\fP[=false]
+    install tiller with TLS enabled and to verify remote certificates
+
+.PP
+\fB\-\-tls\-ca\-cert\fP=""
+    path to CA root certificate
+
 .PP
 \fB\-\-upgrade\fP[=false]
     upgrade if tiller is already installed
@@ -90,4 +114,4 @@ To dump a manifest containing the Tiller deployment YAML, combine the
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_install.1 b/docs/man/man1/helm_install.1
index 7e094cbcf934779b3e78742c74bb8d64f9519141..d97ff0058e670c747324870a550d841886ad1453 100644
--- a/docs/man/man1/helm_install.1
+++ b/docs/man/man1/helm_install.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -150,6 +150,26 @@ charts in a repository, use 'helm search'.
 \fB\-\-timeout\fP=300
     time in seconds to wait for any individual kubernetes operation (like Jobs for hooks)
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 .PP
 \fB\-f\fP, \fB\-\-values\fP=[]
     specify values in a YAML file (can specify multiple)
@@ -164,7 +184,7 @@ charts in a repository, use 'helm search'.
 
 .PP
 \fB\-\-wait\fP[=false]
-    if set, will wait until all Pods, PVCs, and Services are in a ready state before marking the release as successful. It will wait for as long as \-\-timeout
+    if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as \-\-timeout
 
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
@@ -196,4 +216,4 @@ charts in a repository, use 'helm search'.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_list.1 b/docs/man/man1/helm_list.1
index af33db6260862d405a6e127d55f8024b90717721..8fbdf09c4406b8a3075b1ec5f92e245d925e828d 100644
--- a/docs/man/man1/helm_list.1
+++ b/docs/man/man1/helm_list.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -98,6 +98,26 @@ flag with the '\-\-offset' flag allows you to page through results.
 \fB\-q\fP, \fB\-\-short\fP[=false]
     output short (quiet) listing format
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -128,4 +148,4 @@ flag with the '\-\-offset' flag allows you to page through results.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_package.1 b/docs/man/man1/helm_package.1
index 94f375dbc16499b0c73c21f9e47ee8a03aed88dd..205d52980c1f2b84b900690e0a159cee2d7d9e49 100644
--- a/docs/man/man1/helm_package.1
+++ b/docs/man/man1/helm_package.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -28,6 +28,10 @@ Versioned chart archives are used by Helm package repositories.
 
 
 .SH OPTIONS
+.PP
+\fB\-d\fP, \fB\-\-destination\fP="."
+    location to write the chart.
+
 .PP
 \fB\-\-key\fP=""
     name of the key to use when signing. Used if \-\-sign is true
@@ -78,4 +82,4 @@ Versioned chart archives are used by Helm package repositories.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_plugin.1 b/docs/man/man1/helm_plugin.1
new file mode 100644
index 0000000000000000000000000000000000000000..2a126161edc3aa9ceb7a674eb4ca1830bb64c399
--- /dev/null
+++ b/docs/man/man1/helm_plugin.1
@@ -0,0 +1,50 @@
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
+.nh
+.ad l
+
+
+.SH NAME
+.PP
+helm\-plugin \- add, list, or remove Helm plugins
+
+
+.SH SYNOPSIS
+.PP
+\fBhelm plugin\fP
+
+
+.SH DESCRIPTION
+.PP
+Manage client\-side Helm plugins.
+
+
+.SH OPTIONS INHERITED FROM PARENT COMMANDS
+.PP
+\fB\-\-debug\fP[=false]
+    enable verbose output
+
+.PP
+\fB\-\-home\fP="~/.helm"
+    location of your Helm config. Overrides $HELM\_HOME
+
+.PP
+\fB\-\-host\fP=""
+    address of tiller. Overrides $HELM\_HOST
+
+.PP
+\fB\-\-kube\-context\fP=""
+    name of the kubeconfig context to use
+
+.PP
+\fB\-\-tiller\-namespace\fP="kube\-system"
+    namespace of tiller
+
+
+.SH SEE ALSO
+.PP
+\fBhelm(1)\fP, \fBhelm\-plugin\-install(1)\fP, \fBhelm\-plugin\-list(1)\fP, \fBhelm\-plugin\-remove(1)\fP
+
+
+.SH HISTORY
+.PP
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_plugin_install.1 b/docs/man/man1/helm_plugin_install.1
new file mode 100644
index 0000000000000000000000000000000000000000..ea987eb70b4d8575655c23e5212ebb1b260322b3
--- /dev/null
+++ b/docs/man/man1/helm_plugin_install.1
@@ -0,0 +1,56 @@
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
+.nh
+.ad l
+
+
+.SH NAME
+.PP
+helm\-plugin\-install \- install one or more Helm plugins
+
+
+.SH SYNOPSIS
+.PP
+\fBhelm plugin install [options] <path|url>\&...\fP
+
+
+.SH DESCRIPTION
+.PP
+install one or more Helm plugins
+
+
+.SH OPTIONS
+.PP
+\fB\-\-version\fP=""
+    specify a version constraint. If this is not specified, the latest version is installed
+
+
+.SH OPTIONS INHERITED FROM PARENT COMMANDS
+.PP
+\fB\-\-debug\fP[=false]
+    enable verbose output
+
+.PP
+\fB\-\-home\fP="~/.helm"
+    location of your Helm config. Overrides $HELM\_HOME
+
+.PP
+\fB\-\-host\fP=""
+    address of tiller. Overrides $HELM\_HOST
+
+.PP
+\fB\-\-kube\-context\fP=""
+    name of the kubeconfig context to use
+
+.PP
+\fB\-\-tiller\-namespace\fP="kube\-system"
+    namespace of tiller
+
+
+.SH SEE ALSO
+.PP
+\fBhelm\-plugin(1)\fP
+
+
+.SH HISTORY
+.PP
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_plugin_list.1 b/docs/man/man1/helm_plugin_list.1
new file mode 100644
index 0000000000000000000000000000000000000000..d68023d8193ec5cd1fb8f3d8fedd88527f75687f
--- /dev/null
+++ b/docs/man/man1/helm_plugin_list.1
@@ -0,0 +1,50 @@
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
+.nh
+.ad l
+
+
+.SH NAME
+.PP
+helm\-plugin\-list \- list installed Helm plugins
+
+
+.SH SYNOPSIS
+.PP
+\fBhelm plugin list\fP
+
+
+.SH DESCRIPTION
+.PP
+list installed Helm plugins
+
+
+.SH OPTIONS INHERITED FROM PARENT COMMANDS
+.PP
+\fB\-\-debug\fP[=false]
+    enable verbose output
+
+.PP
+\fB\-\-home\fP="~/.helm"
+    location of your Helm config. Overrides $HELM\_HOME
+
+.PP
+\fB\-\-host\fP=""
+    address of tiller. Overrides $HELM\_HOST
+
+.PP
+\fB\-\-kube\-context\fP=""
+    name of the kubeconfig context to use
+
+.PP
+\fB\-\-tiller\-namespace\fP="kube\-system"
+    namespace of tiller
+
+
+.SH SEE ALSO
+.PP
+\fBhelm\-plugin(1)\fP
+
+
+.SH HISTORY
+.PP
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_plugin_remove.1 b/docs/man/man1/helm_plugin_remove.1
new file mode 100644
index 0000000000000000000000000000000000000000..ed876d58b0dc0b366735dafc2ec28d6a61529b8b
--- /dev/null
+++ b/docs/man/man1/helm_plugin_remove.1
@@ -0,0 +1,50 @@
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
+.nh
+.ad l
+
+
+.SH NAME
+.PP
+helm\-plugin\-remove \- remove one or more Helm plugins
+
+
+.SH SYNOPSIS
+.PP
+\fBhelm plugin remove <plugin>\&...\fP
+
+
+.SH DESCRIPTION
+.PP
+remove one or more Helm plugins
+
+
+.SH OPTIONS INHERITED FROM PARENT COMMANDS
+.PP
+\fB\-\-debug\fP[=false]
+    enable verbose output
+
+.PP
+\fB\-\-home\fP="~/.helm"
+    location of your Helm config. Overrides $HELM\_HOME
+
+.PP
+\fB\-\-host\fP=""
+    address of tiller. Overrides $HELM\_HOST
+
+.PP
+\fB\-\-kube\-context\fP=""
+    name of the kubeconfig context to use
+
+.PP
+\fB\-\-tiller\-namespace\fP="kube\-system"
+    namespace of tiller
+
+
+.SH SEE ALSO
+.PP
+\fBhelm\-plugin(1)\fP
+
+
+.SH HISTORY
+.PP
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_reset.1 b/docs/man/man1/helm_reset.1
index 7420d3930da55a49207a4ca3a700d7ac724851d2..0284a068a1b4eea8ec64a9ae0908a7834a07f272 100644
--- a/docs/man/man1/helm_reset.1
+++ b/docs/man/man1/helm_reset.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -29,6 +29,26 @@ $HELM\_HOME (default \~/.helm/)
 \fB\-\-remove\-helm\-home\fP[=false]
     if set deletes $HELM\_HOME
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -59,4 +79,4 @@ $HELM\_HOME (default \~/.helm/)
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_rollback.1 b/docs/man/man1/helm_rollback.1
index b5a9d8821080818a9bbcb8da706829f8c74e92ab..0346790b6ab0a800498a2638804db5c44bc720dc 100644
--- a/docs/man/man1/helm_rollback.1
+++ b/docs/man/man1/helm_rollback.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -40,9 +40,29 @@ second is a revision (version) number. To see revision numbers, run
 \fB\-\-timeout\fP=300
     time in seconds to wait for any individual kubernetes operation (like Jobs for hooks)
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 .PP
 \fB\-\-wait\fP[=false]
-    if set, will wait until all Pods, PVCs, and Services are in a ready state before marking the release as successful. It will wait for as long as \-\-timeout
+    if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as \-\-timeout
 
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
@@ -74,4 +94,4 @@ second is a revision (version) number. To see revision numbers, run
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_status.1 b/docs/man/man1/helm_status.1
index bec0059977b06655b518b3b2b33d29c20bb126ef..9709917c76d32d68b2fb05378adf864f9537f85c 100644
--- a/docs/man/man1/helm_status.1
+++ b/docs/man/man1/helm_status.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -30,6 +30,26 @@ The status consists of:
 \fB\-\-revision\fP=0
     if set, display the status of the named release with revision
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -60,4 +80,4 @@ The status consists of:
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_upgrade.1 b/docs/man/man1/helm_upgrade.1
index 6b6e35fd1e61fd4447ceb486c63a2bf7b97cf055..c458a84ef362ef587ad61285860aa10c9b3a60f2 100644
--- a/docs/man/man1/helm_upgrade.1
+++ b/docs/man/man1/helm_upgrade.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -85,6 +85,10 @@ $ helm upgrade \-\-set foo=bar \-\-set foo=newbar redis ./redis
 \fB\-\-reset\-values\fP[=false]
     when upgrading, reset the values to the ones built into the chart
 
+.PP
+\fB\-\-reuse\-values\fP[=false]
+    when upgrading, reuse the last release's values, and merge in any new values. If '\-\-reset\-values' is specified, this is ignored.
+
 .PP
 \fB\-\-set\fP=[]
     set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
@@ -93,6 +97,26 @@ $ helm upgrade \-\-set foo=bar \-\-set foo=newbar redis ./redis
 \fB\-\-timeout\fP=300
     time in seconds to wait for any individual kubernetes operation (like Jobs for hooks)
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 .PP
 \fB\-f\fP, \fB\-\-values\fP=[]
     specify values in a YAML file (can specify multiple)
@@ -107,7 +131,7 @@ $ helm upgrade \-\-set foo=bar \-\-set foo=newbar redis ./redis
 
 .PP
 \fB\-\-wait\fP[=false]
-    if set, will wait until all Pods, PVCs, and Services are in a ready state before marking the release as successful. It will wait for as long as \-\-timeout
+    if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as \-\-timeout
 
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
@@ -139,4 +163,4 @@ $ helm upgrade \-\-set foo=bar \-\-set foo=newbar redis ./redis
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/docs/man/man1/helm_version.1 b/docs/man/man1/helm_version.1
index ee73941f00e2f605d0ebceba2cbbf76f306b35a5..5e3e9dd6209e8ebe6ef7dc57f518e86ce4d84ddc 100644
--- a/docs/man/man1/helm_version.1
+++ b/docs/man/man1/helm_version.1
@@ -1,4 +1,4 @@
-.TH "HELM" "1" "Mar 2017" "Auto generated by spf13/cobra" "" 
+.TH "HELM" "1" "Apr 2017" "Auto generated by spf13/cobra" "" 
 .nh
 .ad l
 
@@ -50,6 +50,26 @@ use '\-\-server'.
 \fB\-\-short\fP[=false]
     print the version number
 
+.PP
+\fB\-\-tls\fP[=false]
+    enable TLS for request
+
+.PP
+\fB\-\-tls\-ca\-cert\fP="$HELM\_HOME/ca.pem"
+    path to TLS CA certificate file
+
+.PP
+\fB\-\-tls\-cert\fP="$HELM\_HOME/cert.pem"
+    path to TLS certificate file
+
+.PP
+\fB\-\-tls\-key\fP="$HELM\_HOME/key.pem"
+    path to TLS key file
+
+.PP
+\fB\-\-tls\-verify\fP[=false]
+    enable TLS for request and verify remote
+
 
 .SH OPTIONS INHERITED FROM PARENT COMMANDS
 .PP
@@ -80,4 +100,4 @@ use '\-\-server'.
 
 .SH HISTORY
 .PP
-11\-Mar\-2017 Auto generated by spf13/cobra
+12\-Apr\-2017 Auto generated by spf13/cobra
diff --git a/scripts/ci.sh b/scripts/ci.sh
index 4ac87c95876692b0e70b82d364aa08bc5a2ea20f..e0faf9c1822ad380251f8f5881d1874e1f3152fb 100755
--- a/scripts/ci.sh
+++ b/scripts/ci.sh
@@ -27,7 +27,7 @@ run_unit_test() {
     echo "Running unit tests with coverage'"
     ./scripts/coverage.sh --coveralls
   else
-    echo "Running unit tests'"
+    echo "Running 'unit tests'"
     make test-unit
   fi
 }
@@ -37,6 +37,11 @@ run_style_check() {
   make test-style
 }
 
+run_docs_check() {
+  echo "Running 'make verify-docs'"
+  make verify-docs
+}
+
 # Build to ensure packages are compiled
 echo "Running 'make build'"
 make build
@@ -44,4 +49,5 @@ make build
 case "${CIRCLE_NODE_INDEX-0}" in
   0) run_unit_test   ;;
   1) run_style_check ;;
+  2) run_docs_check  ;;
 esac
diff --git a/scripts/completions.bash b/scripts/completions.bash
index 89080f9a10ebe65d4c77a7ad1cf0aa764e21a03b..7e95df555e8018fbdcfc0b8608c20e8c990bf900 100644
--- a/scripts/completions.bash
+++ b/scripts/completions.bash
@@ -289,6 +289,16 @@ _helm_delete()
     local_nonpersistent_flags+=("--purge")
     flags+=("--timeout=")
     local_nonpersistent_flags+=("--timeout=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--debug")
     flags+=("--home=")
     flags+=("--host=")
@@ -529,6 +539,16 @@ _helm_get()
 
     flags+=("--revision=")
     local_nonpersistent_flags+=("--revision=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--debug")
     flags+=("--home=")
     flags+=("--host=")
@@ -553,6 +573,16 @@ _helm_history()
 
     flags+=("--max=")
     local_nonpersistent_flags+=("--max=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--debug")
     flags+=("--home=")
     flags+=("--host=")
@@ -604,9 +634,21 @@ _helm_init()
     local_nonpersistent_flags+=("--client-only")
     flags+=("--dry-run")
     local_nonpersistent_flags+=("--dry-run")
+    flags+=("--skip-refresh")
+    local_nonpersistent_flags+=("--skip-refresh")
     flags+=("--tiller-image=")
     two_word_flags+=("-i")
     local_nonpersistent_flags+=("--tiller-image=")
+    flags+=("--tiller-tls")
+    local_nonpersistent_flags+=("--tiller-tls")
+    flags+=("--tiller-tls-cert=")
+    local_nonpersistent_flags+=("--tiller-tls-cert=")
+    flags+=("--tiller-tls-key=")
+    local_nonpersistent_flags+=("--tiller-tls-key=")
+    flags+=("--tiller-tls-verify")
+    local_nonpersistent_flags+=("--tiller-tls-verify")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
     flags+=("--upgrade")
     local_nonpersistent_flags+=("--upgrade")
     flags+=("--debug")
@@ -736,6 +778,16 @@ _helm_install()
     local_nonpersistent_flags+=("--set=")
     flags+=("--timeout=")
     local_nonpersistent_flags+=("--timeout=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--values=")
     two_word_flags+=("-f")
     local_nonpersistent_flags+=("--values=")
@@ -818,6 +870,16 @@ _helm_list()
     flags+=("--short")
     flags+=("-q")
     local_nonpersistent_flags+=("--short")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--debug")
     flags+=("--home=")
     flags+=("--host=")
@@ -840,6 +902,9 @@ _helm_package()
     flags_with_completion=()
     flags_completion=()
 
+    flags+=("--destination=")
+    two_word_flags+=("-d")
+    local_nonpersistent_flags+=("--destination=")
     flags+=("--key=")
     local_nonpersistent_flags+=("--key=")
     flags+=("--keyring=")
@@ -861,6 +926,99 @@ _helm_package()
     noun_aliases=()
 }
 
+_helm_plugin_install()
+{
+    last_command="helm_plugin_install"
+    commands=()
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--version=")
+    local_nonpersistent_flags+=("--version=")
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
+_helm_plugin_list()
+{
+    last_command="helm_plugin_list"
+    commands=()
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
+_helm_plugin_remove()
+{
+    last_command="helm_plugin_remove"
+    commands=()
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
+_helm_plugin()
+{
+    last_command="helm_plugin"
+    commands=()
+    commands+=("install")
+    commands+=("list")
+    commands+=("remove")
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
 _helm_repo_add()
 {
     last_command="helm_repo_add"
@@ -1037,6 +1195,43 @@ _helm_reset()
     noun_aliases=()
 }
 
+_helm_reset()
+{
+    last_command="helm_reset"
+    commands=()
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--force")
+    flags+=("-f")
+    local_nonpersistent_flags+=("--force")
+    flags+=("--remove-helm-home")
+    local_nonpersistent_flags+=("--remove-helm-home")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
 _helm_rollback()
 {
     last_command="helm_rollback"
@@ -1056,6 +1251,16 @@ _helm_rollback()
     local_nonpersistent_flags+=("--recreate-pods")
     flags+=("--timeout=")
     local_nonpersistent_flags+=("--timeout=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--wait")
     local_nonpersistent_flags+=("--wait")
     flags+=("--debug")
@@ -1137,6 +1342,52 @@ _helm_status()
     flags_completion=()
 
     flags+=("--revision=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
+_helm_test()
+{
+    last_command="helm_test"
+    commands=()
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--cleanup")
+    local_nonpersistent_flags+=("--cleanup")
+    flags+=("--timeout=")
+    local_nonpersistent_flags+=("--timeout=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--debug")
     flags+=("--home=")
     flags+=("--host=")
@@ -1202,10 +1453,22 @@ _helm_upgrade()
     local_nonpersistent_flags+=("--recreate-pods")
     flags+=("--reset-values")
     local_nonpersistent_flags+=("--reset-values")
+    flags+=("--reuse-values")
+    local_nonpersistent_flags+=("--reuse-values")
     flags+=("--set=")
     local_nonpersistent_flags+=("--set=")
     flags+=("--timeout=")
     local_nonpersistent_flags+=("--timeout=")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
     flags+=("--values=")
     two_word_flags+=("-f")
     local_nonpersistent_flags+=("--values=")
@@ -1280,6 +1543,46 @@ _helm_version()
     noun_aliases=()
 }
 
+_helm_version()
+{
+    last_command="helm_version"
+    commands=()
+
+    flags=()
+    two_word_flags=()
+    local_nonpersistent_flags=()
+    flags_with_completion=()
+    flags_completion=()
+
+    flags+=("--client")
+    flags+=("-c")
+    local_nonpersistent_flags+=("--client")
+    flags+=("--server")
+    flags+=("-s")
+    local_nonpersistent_flags+=("--server")
+    flags+=("--short")
+    local_nonpersistent_flags+=("--short")
+    flags+=("--tls")
+    local_nonpersistent_flags+=("--tls")
+    flags+=("--tls-ca-cert=")
+    local_nonpersistent_flags+=("--tls-ca-cert=")
+    flags+=("--tls-cert=")
+    local_nonpersistent_flags+=("--tls-cert=")
+    flags+=("--tls-key=")
+    local_nonpersistent_flags+=("--tls-key=")
+    flags+=("--tls-verify")
+    local_nonpersistent_flags+=("--tls-verify")
+    flags+=("--debug")
+    flags+=("--home=")
+    flags+=("--host=")
+    flags+=("--kube-context=")
+    flags+=("--tiller-namespace=")
+
+    must_have_one_flag=()
+    must_have_one_noun=()
+    noun_aliases=()
+}
+
 _helm()
 {
     last_command="helm"
@@ -1298,16 +1601,20 @@ _helm()
     commands+=("lint")
     commands+=("list")
     commands+=("package")
+    commands+=("plugin")
     commands+=("repo")
     commands+=("reset")
+    commands+=("reset")
     commands+=("rollback")
     commands+=("search")
     commands+=("serve")
     commands+=("status")
     commands+=("test")
+    commands+=("test")
     commands+=("upgrade")
     commands+=("verify")
     commands+=("version")
+    commands+=("version")
 
     flags=()
     two_word_flags=()
diff --git a/scripts/update-docs.sh b/scripts/update-docs.sh
new file mode 100755
index 0000000000000000000000000000000000000000..404ba809073b56366c0df19cc2ef57cabc23c0ce
--- /dev/null
+++ b/scripts/update-docs.sh
@@ -0,0 +1,50 @@
+#!/usr/bin/env bash
+
+# Copyright 2017 The Kubernetes Authors All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -euo pipefail
+
+source scripts/util.sh
+
+if LANG=C sed --help 2>&1 | grep -q GNU; then
+  SED="sed"
+elif which gsed &>/dev/null; then
+  SED="gsed"
+else
+  echo "Failed to find GNU sed as sed or gsed. If you are on Mac: brew install gnu-sed." >&2
+  exit 1
+fi
+
+kube::util::ensure-temp-dir
+
+mkdir -p ${KUBE_TEMP}/docs/helm ${KUBE_TEMP}/docs/man/man1 ${KUBE_TEMP}/scripts
+bin/helm docs --dir ${KUBE_TEMP}/docs/helm
+bin/helm docs --dir ${KUBE_TEMP}/docs/man/man1 --type man
+bin/helm docs --dir ${KUBE_TEMP}/scripts --type bash
+
+
+FILES=$(find ${KUBE_TEMP} -type f)
+
+${SED} -i -e "s:${HOME}:~:" ${FILES}
+
+for i in ${FILES}; do
+  ret=0
+  truepath=$(echo ${i} | ${SED} "s:${KUBE_TEMP}/::")
+  diff -NauprB -I 'Auto generated' "${i}" "${truepath}" > /dev/null || ret=$?
+  if [[ $ret -ne 0 ]]; then
+    echo "${truepath} changed. Updating.."
+    cp "${i}" "${truepath}"
+  fi
+done
diff --git a/scripts/util.sh b/scripts/util.sh
new file mode 100644
index 0000000000000000000000000000000000000000..09caaf972c5e8723a42ab3b8eac16eac8bd781c0
--- /dev/null
+++ b/scripts/util.sh
@@ -0,0 +1,58 @@
+#!/usr/bin/env bash
+
+# Copyright 2016 The Kubernetes Authors All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+set -euo pipefail
+
+# Example:  kube::util::trap_add 'echo "in trap DEBUG"' DEBUG
+# See: http://stackoverflow.com/questions/3338030/multiple-bash-traps-for-the-same-signal
+kube::util::trap_add() {
+  local trap_add_cmd
+  trap_add_cmd=$1
+  shift
+
+  for trap_add_name in "$@"; do
+    local existing_cmd
+    local new_cmd
+
+    # Grab the currently defined trap commands for this trap
+    existing_cmd=`trap -p "${trap_add_name}" |  awk -F"'" '{print $2}'`
+
+    if [[ -z "${existing_cmd}" ]]; then
+      new_cmd="${trap_add_cmd}"
+    else
+      new_cmd="${existing_cmd};${trap_add_cmd}"
+    fi
+
+    # Assign the test
+    trap "${new_cmd}" "${trap_add_name}"
+  done
+}
+
+# Opposite of kube::util::ensure-temp-dir()
+kube::util::cleanup-temp-dir() {
+  rm -rf "${KUBE_TEMP}"
+}
+
+# Create a temp dir that'll be deleted at the end of this bash session.
+#
+# Vars set:
+#   KUBE_TEMP
+kube::util::ensure-temp-dir() {
+  if [[ -z ${KUBE_TEMP-} ]]; then
+    KUBE_TEMP=$(mktemp -d 2>/dev/null || mktemp -d -t kubernetes.XXXXXX)
+    kube::util::trap_add kube::util::cleanup-temp-dir EXIT
+  fi
+}
diff --git a/scripts/docs-clean-home.sh b/scripts/verify-docs.sh
similarity index 56%
rename from scripts/docs-clean-home.sh
rename to scripts/verify-docs.sh
index 50ed2d2ce1d21663e86f5695078ef6bc16d4ba76..7ea266221785cf0ca531400829e15abd189f3167 100755
--- a/scripts/docs-clean-home.sh
+++ b/scripts/verify-docs.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 
-# Copyright 2016 The Kubernetes Authors All rights reserved.
+# Copyright 2017 The Kubernetes Authors All rights reserved.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -16,6 +16,8 @@
 
 set -euo pipefail
 
+source scripts/util.sh
+
 if LANG=C sed --help 2>&1 | grep -q GNU; then
   SED="sed"
 elif which gsed &>/dev/null; then
@@ -25,6 +27,24 @@ else
   exit 1
 fi
 
-FILES=$(find ./docs -type f)
+kube::util::ensure-temp-dir
+
+mkdir -p ${KUBE_TEMP}/docs/helm ${KUBE_TEMP}/docs/man/man1 ${KUBE_TEMP}/scripts
+bin/helm docs --dir ${KUBE_TEMP}/docs/helm
+bin/helm docs --dir ${KUBE_TEMP}/docs/man/man1 --type man
+bin/helm docs --dir ${KUBE_TEMP}/scripts --type bash
+
+
+FILES=$(find ${KUBE_TEMP} -type f)
 
 ${SED} -i -e "s:${HOME}:~:" ${FILES}
+ret=0
+for i in ${FILES}; do
+  diff -NauprB -I 'Auto generated' ${i} $(echo ${i} | ${SED} "s:${KUBE_TEMP}/::") || ret=$?
+done
+if [[ $ret -eq 0 ]]; then
+  echo "helm docs up to date."
+else
+  echo "helm docs are out of date. Please run \"make docs\""
+  exit 1
+fi