Add "Services API" + substantial interface rework