fixed it so that wm can be invoked from any combination of startx/xinitrc with/without args and added checks for programs before trying to run