An exception hierarchy to represent HTTP errors and redirections