moved operating system detection to new parser