Allows user to create DefaultTreeItem using java.util.regex.Pattern

... for path matching instead of strings.

Tests pass for me locally.

This feature is useful for dealing with trees where item's text contain substring that is not (easily) predictable (e.g. project members of (git/svn/cvs)-backed project contain also revision number). Extends API and changes internals a bit - regex matching is now default (Matcher.matches instead of String.equals), Strings are converted by Pattern.quote to proper patterns.