[SPARK-3128][MLLIB] Use streaming test suite for StreamingLR

Refactored tests for streaming linear regression to use existing  streaming test utilities. Summary of changes:
- Made ``mllib`` depend on tests from ``streaming``
- Rewrote accuracy and convergence tests to use ``setupStreams`` and ``runStreams``
- Added new test for the accuracy of predictions generated by ``predictOnValue``

These tests should run faster, be easier to extend/maintain, and provide a reference for new tests.

@mengxr @tdas
`.reduce(_+_)` -> `sum`

Then it could be fit into one line:
~~~
val errors = output.map(batch => batch.map(p => math.abs(p._1 - p._2)).sum / nPoints)
~~~

sum returns Double so we don't need to call `toDouble` explicitly.