Dictionary<string, string> DeserializeDictionary (string path)
{
if (!File.Exists (path))
return new Dictionary<string, string> ();
return File.ReadAllLines (path)
.Where (l => !string.IsNullOrEmpty (l) && l[0] != '#') // Take non-empty, non-comment lines
.Select (l => l.Split ('='))
.Where (a => a != null && a.Length == 2)
.ToDictionary (t => t[0].Trim (), t => t[1].Trim ());
}