Logical Foundations of Mathematics and Computational Complexity - A Gentle Introduction