ENH: is_homogeneous
Split https://github.com/pandas-dev/pandas/pull/22325

@jorisvandenbossche suggested moving this off of the BlockManager.

Right now, I've made this public. Do we want that? If so I'll add to api.rst, release note, etc. Otherwise, I'll make it private.