#92 - BK/RA - refactor the product map to include alternates by id
#92 - BK/RA - add spec for alternate product lookup logic
#92 - BK/RA - refactoring recommendation model and controller
#92 - BK/RA - Changed Product object to hash