NT was a rename of the OS/2 3.0 development snapshot which Microsoft ended up with after their spat with IBM in the early 1990's and continued to evolve into the NT kernel
That's not entirely correct. Microsoft did use some OS/2 technology in the development of Windows NT, but the NT kernel itself was based on a rewrite of VMS, which was performed by one of the key developers of VMS, Dave Cutler. The OS/2 technology built into NT was primarily included for compatibility with earlier versions of OS/2.
The reason NT started at version 3 is because versions 1 and 2 were already released as the collaborative effort and named OS/2 versions 1 and 2.
Actually, from what I understood, the reason that NT started at version 3.1 is because it matched the release level of the existing (16-bit) version of Windows at the time, and Microsoft wanted to emphasize NT's compatibility with 16-bit applications in the hopes of upgrading mainstream users to NT as quickly as possible. Of course, delivering acceptable compatibility for 16-bit Windows applications in NT turned out to be a lot harder than expected, and most mainstream users did not migrate to the NT kernel until Windows XP was released in 2001.
Your code should be more efficient!