This should hopefully make the refactor into a clean world API a bit better. Still more to do though!