ENH: implement Float16Engine
cc @topper-123 

If we do go down this path, I'll try to fix the xfails before merging.
context is #49536, this is largely a proof of concept I don't have a string opinion on 16bit floats, they're probably very rarely used, that most users won't use them, thought from a API completeness perspective, they're good to have. So I'm probably +0 on adding float16 indexes. 

IF it is decided to go through with this,  float16 should be added to `pandas/tests/indexes/numeric/test_numeric.py::TestFloatNumericIndex::dtype` and probably in other places. I'm pretty happy to defer to @topper-123 on this topic.  should we close this? I would very much would like #49536 to get merged, i.e. so I'm in favor of closing this for now, or at least not having #49536 dependant on this PR. If someone wants float16 indexes, it can always be opened a new PR later (though I'm a bit apprehensive about if because of the lack of `float16_t` in numpy).

I'll close this PR for now.