make sure each classloader adds it's unique hash
add more resource types
change caching strategy depending on resource type