class PackageList implements Iterable<String> {

    public List<String> getPackages() {
        return Collections.unmodifiableList(packages);
    }

    public  PackageList();
    public  PackageList(String... defaultPackages);
    public  PackageList(List<String> defaultPackages, List<String> packages);
    public  PackageList(List<String> packages);

}