BooleanArray, StringArray value_counts na_value
```
arr = pd.array([True, False, np.nan])

>>> arr
<BooleanArray>
[True, False, NA]
Length: 3, dtype: boolean

>>> arr.value_counts(dropna=False)
True     1
False    1
False    1
dtype: int64
```

Instead of two False entries, one of them should be pd.NA right?  cc @TomAugspurger 

```
arr = pd.array(['foo', 'bar', None])

>>> arr.value_counts(dropna=False)
foo    1
bar    1
NaN    1
dtype: int64
```

The NaN should be pd.NA right?

Side-note: the defaults for dropna are not consistent across our EAs