added in caching and updated normalized names to not include spaces