Lectures on Algebraic Theory of D-Modules