Semiconductor 101 - The Fundamentals