I'm ... not sure about `Result`. I guess it depends what we're trying to use this for, i.e. just `HashMap` or a more general hashing interface.

If it's just `HashMap` (and similar structures) then I imagine that `Result` will essentially always be `u64`, and so there's not much point having it generic. (Under this scheme, hashes that return `u32`, like, say, xxHash, would just have the high bits zeroed, and hashes that return larger results, like an AES based one, can just truncate.)

Of course, if we're trying to aim this for more general use, then `Result` is probably OK.