Modeling, Inference And Optimization With Composable Differentiable Procedures