Text this: Energy efficiency-user fairness tradeoff for device-to-device communication via joint power control and scheduling