Bayesian Learning with Dependency Structures via Latent Factors, Mixtures, and Copulas