title: Path.Combine and the dot notation
body: <p>I'm looking for something akin to <code>Path.Combine</code> method that will help me correctly combine absolute and relative paths. For example, I want</p>
  
  <pre><code>Path.Combine(@"c:\alpha\beta", @"..\gamma");
  </code></pre>
  
  <p>to yield <code>c:\alpha\gamma</code> instead of <code>c:\alpha\..\gamma</code> as <code>Path.Combine</code> does. Is there any easy way of accomplishing this? Needless to say, I also want to period <code>.</code> path or multiple <code>..</code> paths (e.g., <code>..\..\</code>) to work correctly.</p>