feat(registry): deis-cache for saving meta data

This improves the registry speed with remote stores and improves the developer UX

Fixes #1780, fixes #1794
But doesn't this mean we need to vendor and import etcd only to get a statically defined error code, which is unlikely to change? The python etcd client is also hard-coding those values https://github.com/jplana/python-etcd/blob/0b23662469d78c34a8f5456f3ff9213bc6e3a59c/src/etcd/__init__.py#L114 Maybe a PR to go-etcd?