Game Design as a Complex Problem Solving Process