WeightedAverage ->
Arg Input : Array | List,
    Extract : < Arg > : < Float : +- >

Total, Divider, Weight = 0 ..

Do Weight += 1,
   Total += Extract( X ) * Weight; Divider += Weight
With X from Input

If Divider then
 Return Total / Divider
Else
 Return 0
