using chipflow.toml as a plain nested dict is error prone and increases codebase complexity. Also json schema as the definition is tricky to maintain. Convert to Pydantic for a more pythonic approach.