The theory behind covariance and contravariance in C# 4 | Hacker News Reader