Use Futures for load balancing.
Fix memory leaks in MRUtils, and add methods to guarantee distributed consistency.
FIx last commit.
Add JUnit test for MRUtils Frame manipulation.
Empty local trash in finally clause.
Add assertion in scoreImpl() for vecs and names to match.
Add improved JUnit test for Deep Learning (regression, classification
(binary,multi-class), shuffling, sampling, load balancing, validation set, etc.

Add MRUtils Junit test to JUnitRunnerDebug
Fix memory leak when re-doing stratified sampling after not every class was represented.
Add helper for temporary frame creation to avoid memory leaks.  Allow seed to
be specified in multi-node operation -> affects sampling (but won't get
reproducible results).
Add class rebalancing to comprehensive Deep Learning Junit test.
Only try up to 10 times to get all classes represented in stratified sampling,
can be very unlikely with small sampling ratios.
Remove Deep Learning Prostate test from JUnitRunner (takes too long).
Reorg.
Clean up memory management for temporary Frames/Vecs.
Create source/validation Frames only once, to test memory management.
Add a fast version (<10s) of DeepLearningProstateTest to ./build.sh.
This tests load balancing, stratified sampling, regression/classification binary+multi, repeat usage of input frames, validation sets, scoring (CM, AUC, MSE).
Merge branch 'master' into arno-deeplearning2