extension Array where Element == String { public func joined(separator: String = default) -> String }
extension Array where Element : BidirectionalCollection { public func joined() -> FlattenBidirectionalCollection<Array<Element>> }