CLN: Don't use astype_nansafe after to_numpy
I'm not 100% sure about the change in the tests, but it seems to align with numpy:
```python
[ins] In [1]: np.array([1, 2]).astype(str)                                                                                                                                                                   
Out[1]: array(['1', '2'], dtype='<U21')

[ins] In [2]: pd.array([1, 2]).astype(str)                                                                                                                                                                   
Out[2]: array(['1', '2'], dtype='<U21')
```
```python
[ins] In [1]: np.array([True, False]).astype(str)                                                                                                                                                            
Out[1]: array(['True', 'False'], dtype='<U5')

[ins] In [2]: pd.array([True, False]).astype(str)                                                                                                                                                            
Out[2]: array(['True', 'False'], dtype='<U5')
```