Refactor backends into a cleaner API

This should make the server code more readable by disentangling it
from the backend implementation.
4 jobs for master in 1 minute and 51 seconds (queued for 1 second)
Status Job ID Name Coverage
  Build Pkgsrc
passed #7236
build_pkgsrc:stretch

00:00:18

 
  Build Pkg
passed #7237
amd64
build_pkg:stretch:amd64

00:01:10

passed #7238
arm64
build_pkg:stretch:arm64

00:00:17

 
  Upload Pkg
passed #7239
upload_pkg

00:00:22