A Probabilistic Programming Approach To Probabilistic Data Analysis