Memoizer: use Location instead of File to represent 'id'

This is consistent with other readers, in that it does not assume that
'id' is a file on disk.