This streamlines the code across all platforms and outsources the path
building to QSP which implements the multi-platform logic.
This keeps AppData lookup paths where they were (with additional lookup
paths from QSP).
Config location changes on Windows (from local to roaming) and OS X
(from Application Support to Preferences).
Cache also changes location on Windows and OS X.
Temporary directory management is entirely outsourced to QTemporaryDir
which is kept in a scoped pointer so it gets cleaned up on exit.