implementing joining either strings or PathnameWraps