refactoring to support new ResourceType interface + refactoring on NewResourceHandler's to avoid usage of string manipulation to build paths.
ops, forgot this on merge