Fundamentals of Semiconductors: Physics and Materials