CategoryReader: use proper YAML parsing