Reworked Makefile, use pragma for include guards