The Bayesian Case Model - A Generative Approach for Case-Based Reasoning and Prototype Classification