Changed run_callbacks to protected
Added new `copy` function to clone repositories
log() now takes branch=, but only implemented for Git right now