[Refactor] Switches to using safe categories/type names, adds a project and pod spec, and formats code properly.