Try memoizing Interface.interface_ports() with an LFU cache.
Fix bug in PathLikeSelector._index_row_in().
Add unit test for Pattern.split_multiindex().
Fix handling of selectors with a single level.
Fix handling of single-level selectors in Interface class, update unit tests.
Copy iterable selector passed to PathLikeSelector.expand() to prevent it from being modified by the method.
Merge recent updates to 'port_ids' into port_ids_mpi.