A Variational Autoencoder for Heterogeneous Temporal and Longitudinal Data