 
     @spec run(BattleSnake.World.t, BattleSnake.Snake.t) :: BattleSnake.Point.t
     def run(%Snake{} = snake, %World{} = world) do
-      response = @api.request_move(snake, world)
+      response = @api.request_move(snake, world, [recv_timeout: 200])
       response
       |> process_response
       |> Move.to_point

  """
  @spec next(World.t) :: World.t
  def next(world) do
    snakes = world.snakes

    snakes = Task.Supervisor.async_stream_nolink(

      snakes,
      Worker,
      :run,
      [world],
      options)
      |> Stream.zip(snakes)
      |> Stream.map(&get_move_for_snake/1)
      |> Stream.map(&move_snake/1)
