add preliminary windows support