Adds a new remove() function to the Storage API, which removes an item from storage and returns it to the call. Replaces a few end-of-protocol calls to retrieve with remove, but only where there is no chance that the item will be needed again. Replacing other instances of retrieve with remove will require more care, especially when considering the possibility of ProtocolErrors
After r3_pubs and r3_private are retrieved, there are still checks that need to be done which can fail with ProtocolError. I didn't remove these values, so to avoid figuring out what to do with them in this case
Adds a new
remove()
function to the Storage API, which removes an item from storage and returns it to the call. Replaces a few end-of-protocol calls toretrieve
withremove
, but only where there is no chance that the item will be needed again. Replacing other instances ofretrieve
withremove
will require more care, especially when considering the possibility ofProtocolError
sCloses #288