(maint) Refactor Dockerfile "edge" and "release"
(maint) Refactor Dockerfile "edge" and "release"

 - From source builds and package builds have very similar final
   behavior - that is, they install a deb, then install a package /
   package command. With source builds, it's the file from the build
   stage, while release builds are from the upstream repo

   Factor this into the "final" stage of the build, setting the
   install_path argument to the command issued to apt-get install.

   Use an ADD command to download the .deb file from the appropriate
   upstream location, depending on if the build is from source or
   packages.

   NOTE: this changes caching behavior with buildkit. Previously,
   buildkit was capable of caching everything on rebuild, which could
   be considered errant given upstream repos could have changed.

   This now causes the final stage to always perform the apt-get install
   which accounts for approximately 25 seconds on a local machine
   each time.

puppetlabs/puppetdb,puppetlabs/puppetdb,puppetlabs/puppetdb,puppetlabs/puppetdb,puppetlabs/puppetdb