Add coffee break to allow for accumulation of statistics and reproduce ~100 errors on MNIST

This is a slightl more involved (bu still small) pull request that slightly changes the way the coffee breaks work:
-> each break now returns a dict in which statistics are recorded.
    These dicts can then be recoreded by the AccumulateStatistics break and saved to a hdf5 file.
I have also added a plot_statistics.jl script to tools with which such a statistics file can be plotted. This is quite useful for monitoring training and resembles the way pylearn2 handles plotting which I quite like :).
I have also added a first example for training a fully connected network on MNIST with dropout that gives ~103 errors on MNIST and thus reproduces the results from the dropout paper.
Let me know if you prefer a different way of handling the stats logging or feel free to pull as is.