fix issue #8000
This pull request is in response to [issue #8000](https://github.com/pydata/pandas/issues/8000). 

Changes to core/common.py add np.nan as the default value for missing values to the left and right non-missing values during interpolation. This prevents DataFrame.interpolate() from extrapolating the last non-missing value over all trailing missing values (the default).  

Changes to tests/test_common.py add test coverage to the above change. A passing test is where an interpolated series with a trailing missing value maintains that trailing missing value after interpolation.

FYI, in general to simply rebase the PR rather than submit a new one
