Finish the vanilla API refactor