You may have already seen it but jc (https://kellyjonbrazil.github.io/jc/) helps with the first two:
$ jc ls -l | jq
[
{
"filename": "bin",
"flags": "drwxr-xr-x",
"links": 1,
"owner": "nathanmcrae",
"group": "nathanmcrae",
"size": 4096,
"date": "Jun 28 15:15"
},
{
"filename": "pkg",
"flags": "drwxr-xr-x",
"links": 1,
"owner": "nathanmcrae",
"group": "nathanmcrae",
"size": 4096,
"date": "Jun 28 15:15"
}
]