Having a go at simple ports and adapters implementation