---- Version History: 1.0 1999-01-08 1.1 1999-01-10 use simple String.indexOf for short patterns and texts lazy evaluation of skip[] array, to avoid work of calculating it. more comments. lenPat and lenText now local variables. more efficient code to catch the degenerate cases of null and 0-length strings. unravel main loop slightly to avoid extra charAt. now throw NullPointerExceptions on null arguments. also support searches of char arrays. 1.2 2001-08-13 by Jonathan Ellis added index argument to indexOf functions, to allow you to start search part way through the string. setPattern is no longer public; this cuts down on the number of overloaded fns I had to write for the above (why would anyone want to make n+1 fn calls instead of n, in the first place?) lenPat and lenText now instance variables again; I am anal about not duplicating code where possible 1.3 2001-08-13 by Roedy Green clean up JavaDoc set different breakEvenLenPat and breakEvenLenText based on debugging setting. removed the null constructor. rename pat to patternArray 1.4 2002-07-20 by David Gentzel fix bug in indexOfViaTextArray, was ignoring non-zero index. 1.5 2007-05-21 add pad, icon, pass IntelliJ lint, add ANT build.xml. -30-