start using internal clients, still grappling with interfaces...