New lr policies, MultiStep and StepEarly

- MultiStep: See `lenet_multistep_solver.prototxt` 
Allows to define multiple steps in the `solver.prototxt` by setting  `lr_policy: multistep` and by defining `stepvalue` when the learning rate should be decreased. This allows to have not evenly distributed steps. One should define the sequence of `stepvalue` in increasing order.

- StepEarly: See `lenet_stepearly_solver.prototxt`
Allows to decrease the `lr_rate` dynamically based in the behaviour of Test accuracy. 
The learning will be decreased when for a number Tests defined by  `stepearly` the maximum accuracy has not increased.