Channel Assignment And Routing In Cooperative And Competitive Wireless Mesh Networks