changed UI, added recommender functionality, and added better error catching