Handling conversion of empty categorical with dtype_backend='pyarrow'
Handling the case where conversion of empty categorical series with specified dtype_backend='pyarrow' in convert_dtypes function results in 1) an error (when there are no defined categories) or 2) in null[pyarrow] dtype (when there are some defined categories).

- [x] Tests added and passed
- [x] Closes #59934 

Here's the new PR:
https://github.com/pandas-dev/pandas/pull/59952 @veljanin - please do not open a new PR, just push commits to this PR branch. All changes should be in place now... @veljanin - I think changes look good, can you merge main and resolve the conflict. just added skip_if_no decorator to both tests @veljanin - the CI failures are related and need to be addressed. This pull request is stale because it has been open for thirty days with no activity. Please [update](https://pandas.pydata.org/pandas-docs/stable/development/contributing.html#updating-your-pull-request) and respond to this comment if you're still interested in working on this. Closing as stale. @veljanin - if you'd like to continue, address the above comments and we're happy to reopen!