Made ForwardIndex reuse free space from deleted docs.

A pool of deleted documents is kept and gaps are reused in
addDocument(). Note that over time, fragmentation might become a
problem, in which case you'd either need a compacting operation
or to reindex the whole dataset from scratch.
Added some comments to TestForwardIndexDelete.
Sped up mapped filo I/O in forward index.

Reading or writing an int array in one go is often faster than
calling .get()/.put() many times.
Cleaned up DocIndexerXmlHandlers
Made sure to normalize whitespace between words for TEI P4.
Slight fix so the test code gets the expected value again.

The call to terms.indexOf("") in ForwardIndexImplV3.addDocument() would
throw off the delete-tests by assigning different term ids to the
tokens.
Added delete command to IndexTool.

Also slightly changed the commandline of IndexTool: the first parameter
should always be a command, followed by the index dir and other
parameters (see --help for details).
Changed default to continue indexing on error.

If one of your XML files is not well-formed, the indexer will still
continue to index other files. You can change the default with
Indexer.setContinueAfterInputError(b).
QueryTool: reset paging when viewing single group
HitPropValueContext* now know their field property.

As a result of this, serialized values have changed, and
HitPropValue.deserialize() now takes a Searcher instead of a Terms
object.