cf-dc-api: use Mo; extract API ops to DCAPI.pm