Fixed empty destination boolean condition, added a windows specific wrapper around header