I am currently trying to restructure my program to be more OO and to better implement known patterns etc.
I have quite many nested IF-statements and want to get rid of t
Your problem is known as the arrowhead anti-pattern.
There are pragmatic approaches, such as the Guard statements you've shown in your sample, to whole design patterns, avoiding if (and else) all together...
Lots of resources on how to solve them:
http://www.codinghorror.com/blog/2006/01/flattening-arrow-code.html
http://www.lostechies.com/blogs/chrismissal/archive/2009/05/27/anti-patterns-and-worst-practices-the-arrowhead-anti-pattern.aspx
http://elegantcode.com/2009/08/14/observations-on-the-if-statement/