Start implementing a regular expression engine

So far, these are humble beginnings indeed. Based on the descriptions of

	http://swtch.com/%7Ersc/regexp/regexp2.html

I started implementing a Thompson NFA / Pike VM.

The idea being that eventually, regular expressions are to be compiled
into special-purpose bytecode for the Pike VM that executes a varying
number of threads in lock-step over each character of the text to match.
The thread count is bounded by the length of the program: two different
threads with identical instruction pointer at the same character-to-match
would yield exactly the same outcome (and therefore, we can execute just
one such thread instead of possibly many).

To allow for greedy and non-greedy matching, the threads are executed in a
priority order.

To allow for matching groups, each thread carries a state with it, saving
the group offsets acquired so far.

To ease development, the Pattern and Matcher classes are still embedded as
package-local classes into test/Regex.java (so that I can easily develop
them using Eclipse, leaning heavily on Eclipse's debugger).

Also, no parsing is implemented at this time but instead an explicit
program executing a(bb)+a is hardcoded.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
WIP: Test the newly-implemented regular expression engine

TODO: move to end of the patch series.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
TO-UNDO: Revert "WIP: Test the newly-implemented regular expression engine"

This reverts commit 1833c58fb52bd51ab524075a2415546009bf830f.
Regex: add some code for debugging

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
fixup! Start implementing a regular expression engine
WIP: Implement parsing of regular expressions

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>