work on resource factory and also added some new resource types