Energy harvesting aided device-to-device communication networks