ENH: Implement convert_dtypes on block level
The current implementation is pretty bad in the sense that we will always end up splitting blocks even if we don't want to touch the block at all. Pushing this to the Block level let's us solve that problem.
This pull request is stale because it has been open for thirty days with no activity. Please [update](https://pandas.pydata.org/pandas-docs/stable/development/contributing.html#updating-your-pull-request) and respond to this comment if you're still interested in working on this. cc @mroeschke  Thanks @phofl 