Add Ports-and-Adapters Architecture (aka Hexagonal Architecture)