gradle build support for voldemort

1) 'gradle jar' will build binaries that are equivalent to 'ant release'
2) only 'ant release' task is ported to gradle. use 'ant junit' to run
    the unit tests.
3) zip and tar will not be built, unless explicitly requested. by the
   command 'gradle zip' or 'gradle tar' or 'gradle zip tar'

These are the fine level details of the gradle jar
1) The class files has same binary content except for the scala class
files, since it is not used in production, I am ignoring scala as it is
not used in production.

2) The following two lines went missing from the MANIFEST.MF in both
contrib.jar and voldemort.jar
Ant-Version: Apache Ant 1.7.1
Created-By: 20.2-b06 (Sun Microsystems Inc.)

3) some test class files has different binary content but binary
equivalence is not important for them as we dont ship them. Test jar has
some new class files most likely from junit ignoring this one as well.

4) src.jar now contains package.html included as well ( not intentional,
but not problem either so ignoring it)

5) tar and zip tasks are not part of the build, but can be requested
explicility. The contents of tar and zip are going to be little different
than previous but serves the purpose so we can live with it.
Bug fix: Update routing strategy for all stores in case of update store definitions operation
Adding client operation during AdminService tests to catch any side effects of the admin operation
Preparing to release 1.8.2 with the split stores xml fix
check metadata incorrect results, hard analysis

Fix the new admin metadata check command and did the same change
for old admin command.

1) If check metadata fails it says true or false but not the
  actual failure.
2) Check metadata sometimes incorrectly reports failure depending
   on the order in which stores are returned.
3) Check metadata will reprot success if a store is completely missing
   from one of the nodes. It does not track number of times retrieved.

With this commit the check metadata is done using a map.

For stores check
The map will be from storeName to (map from store defintion
to nodeName)

for other
The map will be from object of that key to nodename.

This map will be used for consistency check. This map will group non
matching information to groups for easier analysis. The lenght of the
value in the map will be evaluated for missing information, solving the
problem 2 and 3 listed above
[python client] Fixed reconnect in _execute_request
Merge pull request #179 from mojn/reconnect-bugfix

[python client] Fixed reconnect in _execute_request
Merge pull request #178 from arunthirupathi/checkMetadata

check metadata incorrect results, hard analysis
Using standard logger in the StreamingClient constructor
Merge pull request #182 from FelixGV/log_StreamingClient_construction_properly

Use standard logger in the StreamingClient constructor
Add overwrite option to fork lift tool

If the key already exists in the destination cluster, forklift tool
will not overwrite the key. With the intent of supporting read only
cluster data to be fork lifted to the read/write cluster, overwrite
option is being added. If the newly forklifted data does not contain
the entire key set from the old, then the new data will be the mix
of old and new. The old data should expire sooner than the new one
enforced by the retention policy.
Incorporate code review comments

Fix error message
Change the order of if/else
Merge pull request #183 from arunthirupathi/forkLiftOverwrite

Add overwrite option to fork lift tool
bind failures while running tests

1) Fixed bunch of bind failures where the server is not stopped after
the test causing the bind failures.
2) Added instrumentation to report the port for http when the bind
failure happens, so that we can dig through the log to find the last
started service.
3) Fixed the resource loader to throw error when resource is missing
instead of failing with NPE.
4) Fixed Streaming Client to throw the actual error instead of failing
with NPE on bind failures.
5) Increased the sleep time for Zone Rebalance test as 2 ms is not
enough on my machine. 5 ms sort of fixes the problem, but only time will
tell
junit support for gradle

Added junit support for gradle
gradle build will run minimal test cases and runs in 4 minutes
gradle jar will not run any test case
gradle junit will run all junit and takes about 30 minutes
Merge pull request #184 from arunthirupathi/bindExceptions

Fix bind failures while running tests
Fixed NetworkClassLoader bug when running in Windows OS
Added url explaining the problem in deep
Merge pull request #186 from ctasada/NetworkClassLoader

Fixed NetworkClassLoader bug when running in Windows OS
Merge pull request #185 from arunthirupathi/gradleJunit

junit support for gradle, Will Merge in this commit and will apply the patch on the top from Szczepan.