Respond redirect code when the request is not in the consistent hashing range of the server.
Respond redirect code when the request is not in the consistent hashing range of the server.

If the hash of request is not in the current server's hashing range, the server
has to respond the address of the server that will handle this request. If a
client receives RedirectStatusCode(currently 310. I just pick one of the
redirection code not used in HTTP protocol.), the client has to retry the
address in response.

This patch also moves hashing method to RequestWithUsername from
BlockAndRequest. BlockAndRequest uses hashing method in
RequestWithUsername.

SollmoStudio/beyond,SollmoStudio/beyond,SollmoStudio/beyond