WIP/REF: setitem_with_indexer always use same path for 2D
- [ ] closes #xxxx
- [ ] tests added / passed
- [ ] passes `black pandas`
- [ ] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry

@phofl I'm hoping you're interested in picking up the torch to get this across the finish line.  There are two main places where I think this still needs work

1) being systematic about whether/when we issue a SettingWithCopyWarning
2) perf, as operating column-wise is going to take a toll.  We need to operate block-wise.