The common command.c handled process errors from system-specific int values (errno). Rather, expose a new enum process_result to handle error cause in a generic way.