engine-independent logic test abstraction

pushing engine-independent logic into `*SuiteBase` traits of math-scala. Each enginen should run them successfully. to embed with engine, just create an inherited suite along the lines 

    /** DRMLike tests -- just run common DRM tests in Spark. */
    class DrmLikeSuite extends FunSuite with DistributedSparkSuite with DrmLikeSuiteBase

Substitute DistributedSparkSuite with Distributed<Engine-name>Suite that initialized context, perhaps for every test independently.