Use a simpler, callback based api for the RP.