MAHOUT-1529 (d): moving core engine-independent tests logic to math-scala, spark module running them.
Source: dlyubimov/MAHOUT-1529d
This closes apache/mahout#28.

Squashed commit of the following:

commit 8d693b02e474ca1380c0e1cfa262ec4a47afeeae
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Mon Jul 14 13:03:13 2014 -0700

    minor style

commit f568736a35a8c76c6eb70694ce9feee09ff845dc
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Mon Jul 14 12:57:19 2014 -0700

    + license

commit d47e2dca693c147e6978a6c5e1fe42c1ab73ece3
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Mon Jul 14 12:55:36 2014 -0700

    + license

commit 61e6268d261c875781d430ca7861e0b345f485c3
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Fri Jul 11 11:31:44 2014 -0700

    style

commit c2406654c3fc7326b87848a23933cd4031a2c9a9
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Fri Jul 11 11:27:53 2014 -0700

    Initial test rearrangement. Pushing engine-independent logic to math-scala. Some renames.
NOJIRA: distributed context property must really be public for engine-agnostic consumers
MAHOUT-1529(e): Move dense/sparse matrix test in mapBlock into spark (Anand Avati via dlyubimov)
All math-scala, spark tests are  passing.
this closes apache/mahout#29

Squashed commit of the following:

commit 1e3cdb68198636c9f38f2d41d782d12edba7a2f7
Author: Anand Avati <avati@redhat.com>
Date:   Mon Jul 14 17:20:09 2014 -0700

    MAHOUT-1529: Move dense/sparse matrix test in mapBlock into spark/

    In h2o engine, the Matrix provided to mapBlock() is an instance of
    "H2OBlockMatrix extends AbstractMatrix", and neither a DenseMatrix
    nor SparseMatrix. H2OBlockMatrix is a 0-copy virtual Matrix exposing
    just the partition's data (created at almost no expense), and creates
    a copy-on-write Matrix only if modified by the blockmapfunction.

    So these two tests are failing with h2obindings. Hence moving these two
    tests into spark module.

    Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1595: MatrixVectorView - implement a proper iterateNonZero() (Anand Avati via dlyubimov)
this closes apache/mahout#25

Squashed commit of the following:

commit eb2aa35da282b8955907fcd1ef358e825a100e95
Author: Anand Avati <avati@redhat.com>
Date:   Wed Jul 9 14:29:13 2014 -0700

    MAHOUT-1595: MatrixVectorView - implement a proper iterateNonZero()

    Previous implementation was broken as it was just calling iterator()

    Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Implement H2O backend for Mahout Scala DSL

Barebone only, no logic yet. Compiles, tests fail with NotImplementedError

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Implement non-operator parts of H2O bindings

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Implement non Linear Algebra ops in H2O backend

i.e, mapBlock() and rowRange()

Provide dummy methods for all operators

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Implement Linear Algebra ops in H2O backend

- A'
- A'A
- A'B
- AB'
- A (element-wise) B
- A (element-wise) Scalar
- AinCoreB
- Ax
- Atx

All MathSuite tests are passing.

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Add String key support to DRM

Strings are stored in a Vec along with Frame in CheckpointedDrm

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Implement Par() operator

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Implement Cbind() operator

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: use accessor methods instead of direct field access

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: mahout h2o-node CLI for aux worker processes

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: refactor frame_from_matrix() to reuse empty_frame()

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: SequenceFile persistence (read/write) support

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: Add tests for distributed operations

Mostly copy tests from sparkbindings with minor/trivial changes

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: add README

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: cleanup

- add code comments
- style fixes
- minor cleanups

Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1500: use the new test suites