better code, added windows support
merged, small refactor