Map input to distribution params
Enable backprop through sampling
Reconstruct from latent
Regularize latent space
Reconstruct + KL objective
Full encoder-decoder pipeline