Nested MLP

"Yo dawg, I heard you like MLP..."
After some help from Ian and Mehdi:
- Addition of the get_weight_decay, get_l1_weight_decay methods in MLP (support nested indices). 
- Addition of the get_monitoring_channels_from_state in MLP and modification of the get_monitoring_channels for inner MLPs. 
- Modification of the get_monitoring_channels_from_state methods in other layers for consistency. 
It's hacky and should be replaced by proper handling of nested structures. But it seems to be working with the yaml file provided.