INTRODUCING QOS AWARENESS IN DISTRIBUTED PROGRAMMING: QTCL