added some cache retrieval methods and cleaned up product routes