Tidied up Data Source Factory so its easier to search for matching data