Multiple JSON parses fixes

*Allow semicolon in json values (Windows paths support)* fixes improper token:value separation, if value contains semicolons, e.g. this will not work w/o the fix: `{"save_path":"C:/Users/Dayman/Downloads"}` because this json will be split in 3 parts

*Allow bool lists in json values* fixes parsing of bool lists, e.g. `{"download_in_scan_dirs":[false,true]}` will be cast to int and, as a result, will be equivalent to `{"download_in_scan_dirs":[false,false]}` not yielding expected results. The commit fixes this behavior.