#19 Rework the profile interface, part 1