Cleaned up validation and file system utils

Moved validation into validate.ClientConfig and moved all file system interaction into QDir's and proper os.path.join's