Add off-market properties download

Includes:

 - Remove type-awareness from download code

 - Support nested properties in property files

 - Add --capture-only option

 - Fix unit tests on Mac

 - Clear properties directory when downloading all properties

 - Bug fix: runner.py passes config file path to download_properties.py

 - Rename system_id to id in properties data files