This still needs quite a bit more work to fix bugs and be 100% compatible with NT svn path=/trunk/; revision=1983