added NSURL (read the notes)

this is not a complete implementation, but it is cross-platform