[ArrayManager] Implement concat with axis=1 (merge/join)
The (hopefully) "easy" part of https://github.com/pandas-dev/pandas/pull/39612 for which there seems less discussion: this separates the pieces from https://github.com/pandas-dev/pandas/pull/39612 that are needed to get `concat` with `axis=1` working (`concat_axis=0`), which at least enables the join / merge usecases.
small comments, generally looks good OT should we create a Internal - ArrayManager  label? The windows failure is also happening on master, and the linux failure is a flaky resource warning, so both unrelated. 

Thanks for the reviews! Going to merge now, and will do the `verify_integrity` rename in a follow-up.