API overhaul

Good opportunity for a test path...