[core] Make the internal implementation of Core.read_model(fs::path) the base implementation (#33973)
### Details:
- Continuation to https://github.com/openvinotoolkit/openvino/pull/33740
- Use `std::filesystem::path` in Core.read_model` implementation
- Add a test that checks
- paths of type std::string, std::wstring, std::u16string,
std::u32string
- with/without unicode characters
- overloads
https://github.com/openvinotoolkit/openvino/blob/3d2b77b51d278f4fd507cf8b7f277bbc6fc30cbb/src/inference/include/openvino/runtime/core.hpp#L90
and
https://github.com/openvinotoolkit/openvino/blob/3d2b77b51d278f4fd507cf8b7f277bbc6fc30cbb/src/inference/include/openvino/runtime/core.hpp#L111
### Tickets:
- [CVS-179146](https://jira.devtools.intel.com/browse/CVS-179146)
---------
Co-authored-by: Pawel Raasz <pawel.raasz@intel.com>