a template accommodating the various 
  applicable character types, including user-defined character types.</li>
  <li>Hold the path internally in a string of the type used by the operating 
  system API; <code>std::string</code> for POSIX, <code>std::wstring</code> for Windows.</li>
</ul>

<p>The signatures presented in <a href="#Problem">Problem</a> collapse to 
simply:</p>
<blockquote>
  <pre>void foo( const path &amp; p );</pre>
</blockquote>

<p>That's a signification reduction in code complexity. Spec