add the 'name' attribute to dataframes that go through apply_frame_axis0

 - [ ] closes #xxxx
 - [x] tests added / passed
 - [x] passes ``git diff upstream/master | flake8 --diff``
 - [ ] whatsnew entry

Previously, if you did `group.name` in the applied function, it would fail and fall back to the slower path because the attribute did not exist.

`shape_before` was unused.