TODO:
	2007/06/25
	does not handle this:
		if (cond1 ...
			condn) then goto label
	or this:
	          If (prev.plen > 0) Then
		      If (.plen >= prev.plen _
			  And Left$(.nodeKey, prev.plen) = prev.nodeKey) _
			  Then: GoTo skipit

	2007/06/19
	put the "on error" _after_ the dim statements

	2007/05/25
	should align to first "=" if no other punctuation such as '(' is first.
	That would make
		const foo as string = "xxxx" _
				    & "yyy"
	work.

-------------------------------------------------------------------------------

2008/10/19 1.0.7
	minor fix to avoid treating a line beginning "type as" as a type
	declaration block.

2008/03/13 1.0.6
	minor tweak in ParseLine() to avoid a subscript error when getting "#1"
	for example as a file-number (doesn't look like a date).

2008/03/05 1.0.5
	fixes last build, which parsed the line with comments (and could raise
	an error if a comment contained a '#').

2008/02/28 1.0.4
	fixed indents when there is a line-number (or label) on the same line.

2008/02/25 1.0.3
	enable/extend label-parsing code, so that lines with line-numbers do not
	repeatedly indent further.

2008/02/13 1.0.2
	correct logic in SkipDate(), which has to look for #mm/dd/yyyy# tokens.

	add "Static" qualifier.

2007/08/05 1.0.1
	improve parsing from 2007/06/19 changes by checking for preprocessor
	tokens such as "#if".  Treating those as tokens restores the indention
	within preprocessor lines.

2007/06/19
	modified the parsing to split-off punctuation from identifiers so
	it can handle multiple statements on a line, e.g.,
		foo = 1: bar = 2

2007/06/17
	split-out the rewritten indenter as Indent.bas and Parsing.bas

2007/05/31
	change "ERRHANDLER" to "ErrHandler"

	handle special case in indenter where a single-line if-then is split
	onto a second line, e.g.,
		if (cond) then _
		    statement

	add special case in indenter to know that labels begin in column 1,
	avoiding spurious changes which show up in undo-edits.

	monocased all keywords in indenter to make it tolerate files edited
	outside VB6.

2007/05/21
	drop the VB5-string workaround

	revised the token parsing using new ParseToken(), FindToken(),
	SkipQuotes().

2006/04/07
	add CHANGES.txt

	add reference dll, change project settings to binary compatibility

	add dll's version number to about-message

	change indent function to use a stack, using new subroutines
	BeginIndent, etc.

	trim trailing blanks from all lines in indent function

	update only changed lines in indent function
