Split up learning progress calculation to several views

This had to be done because our CouchDB version is too old, and
it does not support the features required to do this in one view.