The multi-stage dockerfile is now used to build the project binary, instead
of copying it from the host. This enforces that the binary is always rebuilt
whenever there is a change that invalidates the previous version - from a
container image perspective.
The makefile was restructured so that only the most important and relevant code
is present. In order to enable code reuse, build related logic was extracted to
hack/make/build.mk. All code related to installing tools is now placed in
hack/make/tools.mk.
Signed-off-by: Paulo Gomes <paulo.gomes@suse.com>