'Extracts interesting paths from a given path.
Args:
components: Source string represented as a list of components. Components
are generated by applying SplitIntoComponents to a string.
Components is effectively a space-separated representation of a
source string. " ".join(components) should produce the original string
(with pairs of single/double quotes stripped). See
SplitIntoComponents for details.
Returns:
A list of extracted paths (as strings).'

@abc.abstractmethod
def Extract(self, components):

    raise NotImplementedError()
