Algebraic Number Theory And Code Design For Rayleigh Fading Channels, Foundations and Trends in Communications and Information Theory