changing open() so that it now takes a url=.. argument, changing the setopt constants to be defined from the curl headers, stop checking for accept-ranges when not using HTTP/HTTPS, change openreader() and openwriter() to also take url=.. arguments as well. Note that the url=.. is the last argument to these functions so that if someone was setting multiple parameters to open without using the parameter names, it will still work. Also, in order to get the syntax for open that I wiould like (open(url=....)) I made path for in open default to "".