DEV: slim image, drop unused packages and use cache mounts (#880)
* DEV: slim image, drop unused packages and use cache mounts
apt using caches for /var/cache/apt, /var/cache/debconf, and var/lib/apt.
Drop autoconf and build-essential from installs, in favor of selective cmake,
g++, pkg-config, and patch packages.
drop apt-get -y upgrade in dockerfile. We should inherit upgrades from base
images. No need to apt-mark hold initscripts now that we're not running `upgrade`
Remove calls to vim as we no longer install vim here. Remove comment for
slimming locales as we have now done so.
merge all apt layers, minimizing amount of --mount arguments in dockerfile