properties: Store file/cmdline properties in a memory cache for faster lookup.

This avoids repeated syscalls/string manipulation to read property values, which
can be extremely frequent.
properties: If we don't get a reply, then assume we won't get one again.

This stops needless socket/connect/send/recv spam when retrieving properties.
Merge pull request #150 from rburchell/master

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