more error handling around json parse
separating private and nonprivate settings