Upgraded build infrastructure.
Upgraded build infrastructure.

* Major changes to the makefile. We can now just specify what
  projects we have, and for each project a number of source files
  and an output file, and the build system creates makefile rules,
  and ensures that every project has a specific target (the
  simulation target for now). A generic all and clean targets are
  provided. all depends on build rules for all projects, and
  essentially compiles all projects, while clean removes the
  out directory (where each project stores its output files).

horia141/bachelor-thesis,horia141/bachelor-thesis