Add new tests, clarify code, and do PEP8 fixes

This PR on your branch adds a few new tests and refactors the existing test into separate test functions in a new file.

I took the liberty of changing some of the doc strings, since even after reading the referenced paper I didn't know precisely what was meant by an aligned double-double.  Your new code to allow uniform high precision is really great, but it is somewhat intricate so I thought explaining things clearly and changing a couple variable names in `two_sum` was worthwhile.  If you think I'm off the mark feel free to discuss.

I sort of regret doing the PEP8 fixes since it introduces a lot of change noise into the PR, but you can look at the individual commits (in particular 320bb8) for a cleaner idea of the substantive changes.

I discovered a problem with the current SOFA/ERFA libraries for negative `jd1`, this is discussed in the test which is currently marked with xfail.  I'll be submitting an issue on ERFA.

This is relevant to astorpy PR https://github.com/astropy/astropy/pull/1189.