BUG: interpolate should preserve dtypes

Closes #6290

Replaces PR https://github.com/pydata/pandas/pull/6291 due to github / git issues.

@jreback I think opening a new PR will be easier. I'm was having trouble getting that branch and the PR in #6291 to sync up.

I noticed that you got the missing comma in the join_merge vbench added so I've removed that commit.