Why Hanami splits its database layer into relations, repos, and structs, and how that split keeps your persistence layer from leaking into the rest of your app.