[IFRT] Add an IFRT API for Topology.
[IFRT] Add an IFRT API for Topology.

Also add a (currently unused) Compile() method to ifrt::Compiler that produces an ifrt::Executable given a ifrt::Topology.

At the moment this is a thin wrapper around the the PJRT TopologyDescription API, and does not attempt to change that API or its semantics. The change prepares for allowing the two to diverge.

Add a PJRT-IFRT implementation of ifrt::Topology that is for now a direct wrapper of PjRtTopologyDescription.
