2COMM: A Commitment-Based MAS Architecture