A tour of Hanami's foundational abstractions, dependency injection, providers, types, and contracts, with an honest look at the rough edges of each.