CLN: Remove Series._from_array
This PR transfers the class check of `Series._from_array` to `DataFrame._box_col_values`; removing the need for calling the `Series._from_array` and allowing for user-defined slice-inheritance of metadata.

I opted to delete the function as it was private but leave the `Series.from_array` public access working and it's FutureWarning of deprecation, as it was. To do that, I had to modify `Series.from_array` so it would keep also its original functionality until is completely deleted.

- [x] closes #19883
- [ ] passed tests.
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
