Cache properties in a memory-backed store to make lookups more efficient.

Also, don't constantly try connect to the property server if the first attempt fails.