Add a explict bit to the forward list, make forward recursive, remove forward_all and give better error messages is fetch