use ppx_deriving_yojson and yojson to communicate between processes;
add a -status option to show waiting jobs