add PyDocs and change implemntation of diff method

also asset compilation now takes place when the Gemfile.lock changed
(which is necessary due to potential changes in dependent gems, which
will not be reflected in app/assets or vendor/assets)
import missing method check_output