**Description**

It would be nice if the weight_rule default value could be managed by a global config

suggested config:
```
# Weighting method used for the effective total priority weight of the task. 
# Options are: { downstream | upstream | absolute } default is
default_weight_rule = downstream
```
**Use case / motivation**

In some pipeline, you really need to have absolute weight, and then you have to add a line in each task definition which is annoying

tests/models/test_baseoperator.py
with pytest.raises(TypeError):
            chain([Label("labe1"), Label("label2")], 1)
        
        [tg1, tg2] = [TaskGroup(group_id=f"tg{i}", dag=dag) for i in range(1, 3)]
        with pytest.raises(TypeError):
            chain([tg1, tg2], 1)
    def test_chain_different_length_iterable(self):
        dag = DAG(dag_id='test_chain', start_date=datetime.now())
        [label1, label2] = [Label(label=f"label{i}") for i in range(1, 3)]
        [op1, op2, op3, op4, op5] = [BaseOperator(task_id=f't{i}', dag=dag) for i in range(1, 6)]
        with pytest.raises(AirflowException):
            chain([op1, op2], [op3, op4, op5])
        with pytest.raises(AirflowException):
            chain([op1, op2, op3], [label1, label2])
        
        [label3, label4] = [Label(label=f"xcomarg_label{i}") for i in range(1, 3)]
        [xop1, xop2, xop3, xop4, xop5] = [
            task_decorator(task_id=f"xcomarg_task{i}", python_callable=lambda: None, dag=dag)()
            for i in range(1, 6)
        ]
        with pytest.raises(AirflowException):
            chain([xop1, xop2], [xop3, xop4, xop5])
        with pytest.raises(AirflowException):
            chain([xop1, xop2, xop3], [label1, label2])
        
        [tg1, tg2, tg3, tg4, tg5] = [TaskGroup(group_id=f"tg{i}", dag=dag) for i in range(1, 6)]
        with pytest.raises(AirflowException):
            chain([tg1, tg2], [tg3, tg4, tg5])
    def test_lineage_composition(self):