Merge pull request #9 from mspiegel/master

'key.sieve' and 'key.sieve2'
Bug fix for deletion in the concurrent tree. The original tree implementation
has a special purpose for the 'nodes' and 'hits' fields of the TreeTrashNode.
The 'nodes' field stores the accumulated number of non-leaf nodes that have ever
been placed into the trash. The 'hits' field stores the accumulated number of non-leaf
nodes that have ever been removed from the trash (ie deleted). It must be true
at all times that 'hits' <= 'nodes'. With this patch the Concurrent Tree adheres
to this logic so that switching back and forth between trees is possible.
Unit tests added to the Concurrent Tree for the TreeTrashNode behavior.
Cleanup of the module system test script.
Run against the most recent jar that is created when
multiple jars are present in the /target directory.
Adding 'setTopPrivateDomain' option to 'url' bundle filter.
Intended as a more robust method for determining top private domain.
Uses Google Guava InternetDomainName API.
Merging branch 'skiplist-newdelete' into master.
Simplified skip list cache page deletion algorithm.
Always load the previous page from external storage into
memory prior to deleting a page in order to fix the nextFirstKey
value. Eliminate the 'nextFirstKey' internal repairing mechanism
it is clumsy and not shown to be correct.
Hardening of the concurrent tree unit tests.
Bug fix to skip list cache deletion algorithm discovered
by new unit tests.
Minor cleanup of ConcurrentTree#nextTrashNode() and
ConcurrentTree#recreateTrashIterator(). Close the iterator
eagerly instead of lazily when no more elements are detected.
No difference to correctness of algorithm.
remove redundant condition (covered by previous exception type)
Reducing log level from log.warn() to log.info() for messages that are not warnings.
Bug fix in usage of plugin architecture. All the resource files have the suffix
"-foobar.classmap".
Allow the nightly tests to complete in a single night by changing the parameters of a unit test.
Adding 'validateTree' field to the TreeMapper class. Valid options are
'ALL', 'POST', or 'NONE'. Default value is 'NONE'. Controls whether
to perform validation on the pages stored in the external database.
At the moment validaiton is only performed when the concurrent tree is enabled.
If one or more pages are invalid then the task will exit abnormally.
'ALL' performs validation when a job terminates.
'POST' performs validation only if the POST action is executed.
Validation is a slow process.
Clean up of Javadoc description of "sort" query operation.
Reverting meshy dependency to 2.0.0 release until stability of
2.1.0-SNAPSHOT is verified.
Update documentation of JavaSimpleCompiler and classpath of the compiler.
StreamSourceMeshy findMeshFiles improvements

use a static guava Splitter to make sure parsing semantics are clear
and efficient (previously we were compiling a new matcher each time,
although 'each time' was usually small).

remove an unused variable that got left behind at some point

minor logging format
more minor StreamSourceMeshy changes

no reason for peer count to be a long - we don't scale quite that much.
more explicit name for localfind variable
user guide docs
Lowering log severity of messages that should be INFO not WARN.
all known meshy bugs are fixed