static Map<Package, List<Class<?>>> categorize(Collection<Class<?>> comp) {
            Map<Package, List<Class<?>>> packages = new HashMap<Package, List<Class<?>>>();
            for (Class<?> c : comp) {
                Package p = c.getPackage();
                List<Class<?>> tos = packages.get(p);
                if (tos == null) {
                    tos = new ArrayList<Class<?>>();
                    packages.put(p, tos);
                }
                tos.add(c);
            }
            return packages;
        }