Print formats data to the given writer in the specified format, optionally filtering fields.
data: any JSON-serializable value (struct, map, slice).
format: "json" | "table" | "csv".
fields: comma-separated field names to include (empty string means all fields).
PrintError writes a structured JSON error to the given writer.
For *meta.GraphError: includes message, code, subcode, and trace_id.
For other errors: includes message only.