[SPARK-4969][STREAMING][PYTHON] Add binaryRecords to streaming

In Spark 1.2 we added a `binaryRecords` input method for loading flat binary data. This format is useful for numerical array data, e.g. in scientific computing applications. This PR adds support for the same format in Streaming applications, where it is similarly useful, especially for streaming time series or sensor data.

Summary of additions
- adding `binaryRecordsStream` to Spark Streaming 
- exposing `binaryRecordsStream` in the new PySpark Streaming
- new unit tests in Scala and Python

This required adding an optional Hadoop configuration param to `fileStream` and `FileInputStream`, but was otherwise straightforward.

@tdas @davies
It looks like this is based on the FileInputStream test, which is known to be flaky.  I have a PR open which rewrites that test to not depend on SystemClock / Thread.sleep(): #3801.  Therefore, if we want to have this style of test, then this PR should block until my PR is merged so that it can use the new test utilities that I added.

Here's the relevant change from my PR: https://github.com/apache/spark/pull/3801/files#diff-4