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-1597: A + 1.0 (element-wise scala operation) gives wrong result if rdd is missing rows, Spark side (dlyubimov)
This closes apache/mahout#33

Squashed commit of the following:

commit 9038b2c248ec163e0ff85dd37cb109345b3bbb9d
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Mon Jul 28 10:22:30 2014 -0700

    in-place performance enhancement at the risk of side-effects, for now

commit 35c873cceeda87b7b212677bffc0a21877932deb
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 15:34:00 2014 -0700

    CBind test tweak

commit 005aeccd353faeb59f2ddb2003f393a603978edb
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 15:33:18 2014 -0700

    Cbind test

commit 57f669a7d50097a5a816ce13ca8230f6c6742b65
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 14:57:57 2014 -0700

    Also fixing `A ew B` with missing rows operands

commit 2063c5ccaf88bf31d7f5c1dd3d1650925c4dfd58
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 14:12:56 2014 -0700

    style

commit 5d8e1407a7ea2535ae6d00701ed4f60390c1b30e
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 14:09:11 2014 -0700

    Orientation changing unary ops cannot produce missing rows

commit c9ac3be81ed464ccc4d440b8187e15efa9a21193
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 14:03:25 2014 -0700

    Tests, passing .

commit 1ff376b2ddd1bcbe61f896d14e27d7a413e7313c
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 13:23:14 2014 -0700

    Code up for lazy int-keyed missing rows fix

commit 746b3ddc6c0e7e8bb89ce591c32ba1b70ec688e6
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Tue Jul 22 11:25:57 2014 -0700

    WIP

commit 45642b65f3f1620a4e2187af4b2b54e26ce1c42e
Author: Dmitriy Lyubimov <dlyubimov@apache.org>
Date:   Mon Jul 21 18:19:37 2014 -0700

    WIP
closes apache/mahout#27, nonsensical PR
MAHOUT-1596: implement rbind() operator

This closes apache/mahout#30

Conflicts:
	math-scala/src/test/scala/org/apache/mahout/math/drm/RLikeDrmOpsSuiteBase.scala
NOJIRA: renaming distributed ALS `als` -> `dals` to follow convention with other decomposition notations.
(NOJIRA) minor test style
NOJIRA: more parameter naming conventions (style)
(NOJIRA) style, spacing
MAHOUT-1597: A + 1.0 (fixes)
NOJIRA: fix artifact names to follow Scala convention (Anand Avati via dlyubimov)
This closes apache/mahout#39.

Squashed commit of the following:

commit 44b1517f06a6e58c2126f47a463b207843fe02f3
Author: Anand Avati <avati@redhat.com>
Date:   Mon Aug 4 15:26:05 2014 -0700

    NOJIRA: fix artifact names to follow Scala convention

    Scala maven artifacts follow convention of appending Scala
    compiler version number to the name. This is necessary
    as binaries across Scala major version are not compatible.

    Signed-off-by: Anand Avati <avati@redhat.com>
MAHOUT-1541, MAHOUT-1568, MAHOUT-1569 refactoring the options parser and option defaults to DRY up individual driver code putting more in base classes, tightened up the test suite with a better way of comparing actual with correct