code: public static String merge(String parent, String child) {
  	if (child.length() <= 2) {
  	    if (child.length() == 0) return parent;
  	    if (child.equals(".")) return parent;
  	    if (child.equals("..")) child = "../";
  	}
  
  	parent = translatePath(parent, true, false);
  	child = prettifyPath(child);// child.replace('\\', '/');
  
  	if (child.startsWith("./")) child = child.substring(2);
  	if (StringUtil.startsWith(child, '/')) return parent.concat(child);
  	if (!StringUtil.startsWith(child, '.')) return parent.concat("/").concat(child);
  
  	while (child.startsWith("../")) {
  	    parent = pathRemoveLast(parent);
  	    child = child.substring(3);
  	}
  	if (StringUtil.startsWith(child, '/')) return parent.concat(child);
  	return parent.concat("/").concat(child);
      }
docs: merge to path parts to one
  
  @param parent
  @param child
  @return