decode path byte string

without decode(), path.endswith(alternative) will throw an exception, making the which lookup fail
decode() on python2 returns unicode from ascii
decode() on python3 returns string from bytes