first working caching implementation; needs work,

Configurator and ExecutableCheck now use a .environaut.cache file if it's
present to not ask again for a value when it's in the cache file. There's
a commandline switch to set the cache file to use for this, but as that's
used for writing as well it should probably be possible to separate
reading from writing to benefit from old caches, but still write the new
cache to a different location. Have to think about that. The Configurator
and ExecutableCheck should also ask the User to confirm the value and
perhaps don't show sensitive values (HIDDEN) by default, but still be able
to reuse those.

The current implementation of the caching makes it mandatory for checks to
add the cachable settings to the result and reset those settings on the
result even if they read/take them from the cache.

The difference between the readonly cache location used for the checks is,
that there may be completely different caches on subsequent runs and thus
the cached settings get old and will not be removed from the cache if it's
not rewritten properly with only the currently active and wanted settings.

The cache will always be written, but should probably only be written with
succeeded checks etc. This is a TODO.