an example project skeleton

- debug macros
- automated testing
- a useful and flexible makefile