Satellite Communications Systems Engineering: Atmospheric Effects, Satellite Link Design and System Performance