replaced the hardcoded mlp with a more general one that can handle an arbitrary number of layers. On the density classification task, performance gets pretty bad at 5 hidden layers. This may be the nature of deep networks trained by backprop, or it could be revealing a bug in the training