Recommendation cleanup/refactor. (Work in progress)