This commit adds a field to CachedProjectConfig that caches all the
plugin configs - that is configs under the plugins section. This allows
us to remove ProjectConfig from ProjectState and solely rely on
CachedProjectConfig.
This is a leap forward, because it will soon allow us to stop caching
ProjectState in ProjectCache and cache the immutable and thin
CachedProjectConfig instead.
Configs are cached as string so that they are immutable and turned into
a Config/PluginConfig on demand. We turn PluginConfig into an AutoValue
and split it into a mutable and immutable part. We don't cache this just
yet, but that can be a future improvement.
Change-Id: I47bd35d50dae07aa2afd4862b998a4ae94454150