Add convenience Makefile

The Makefile is just a convenience to more easily build elsa.

To build all of elsa, just call `make build` from the top level
directory. You can also pass any target to build, to specifically build
this target, e.g. `make build test_DataContainer`.

Other useful commands could `make tests`, to build and run all tests.
`make test <test-name>` to build a specific test case and run it.
And `make watch <test-name>` to build and run a test continuously on
code changes in elsa.

Note that a sub-folder structure will be created of the form
`build/$BUILD_TYPE/$COMPILER`. This enables quick iteration for
different build types and compilers, via passing the options
`BUILD_TYPE` and `CXX`.
26 jobs for master in 23 minutes and 32 seconds (queued for 9 seconds)