most people use .h(I think), but sfml is not the only lib which uses .hpp. Another (very popular) example would be boost.
However it doesn't matter which extension they have.
I think Float matters for vram, OpenGL and DirectX both use floats, so it wouldn't make sense that sfml takes doubles and then converts them.