Follow-up on basic FloatingArray implementation
Long overdue follow-up item on the initial merge of the nullable float64/float32 support (https://github.com/pandas-dev/pandas/pull/34307).

List of follow-up TODO items:

* [x] Update the `convert_dtypes` method to also return nullable floats (one question here: what with floats that are all "integer"-like? I think we want to keep returning nullable int for that, but we might want to add a parameter controlling that behaviour?) -> #38117
* [x] Arithmetic operations with IntegerArray/BooleanArray can now return a FloatingArray instead of numpy float array(eg division with Int64 should give Float64 -> #38178
* [ ] Ufuncs on IntegerArray/BooleanArray can return FloatingArray, ufuncs on mixture of IntegerArray/FloatArray
* [x] Consolidate some tests that are common for integer/boolean/float
  * For example the `value_counts` test could easily be shared and moved to masked/ (see the ones I added in https://github.com/pandas-dev/pandas/pull/38178)
* [ ] Deduplicate more things between the Array classes and move to BaseMaskedArray (eg the arithmetic / comparison ops can probably be moved with a bit of refactoring)
  * [x] `__from_arrow__` -> https://github.com/pandas-dev/pandas/pull/38411
  * [ ] ufuncs -> https://github.com/pandas-dev/pandas/pull/38412
  * [ ] `coerce_to_array`, but this will probably require some refactoring
* [ ] Honor the formatting options (eg precision) #39336
* [x] Fix membership test for np.nan (`np.nan in arr`), see https://github.com/pandas-dev/pandas/pull/37867#discussion_r531079439

And of course, we also still have the NA vs NaN discussion to further flesh out (https://github.com/pandas-dev/pandas/issues/32265), but this issue is for the direct practical TODO items.


