TST/CLN: Refactor io.data.options class to improve testing

Removed most references to month and year (passing expiry date around instead).
Also protected with RemoteDataError checking for the expiry month links.
BUG: Test for underlying price before reducing data

Removed most references to month and year (passing expiry date around instead).
Also protected with RemoteDataError checking for the expiry month links.
Merge pull request #7665 from dstephens99/master

TST/CLN: Refactor io.data.options class to improve testing