Fix Makefile to only run tests once during a build.

@markhibberd minor fix, could you review for me?

Correct me if I'm wrong, but I think the point of the "dist" target in the framework Makefile was *not* to run the tests - that's what the "test" target is for (which also does a build as well).

After your last change, all the tests would be run twice (and some potentially even more than that) every time you do a build. Basically tests would be run once when the root Makefile goes into each sub-project directory and runs "make dist", but then sub-projects that have DISTFILES for build outputs of other sub-projects would *also* go to each of those sub-projects and run "make", which would run the tests for that project again.

To fix this, I made a few small changes to the Makefiles. "test" is now the default sub-project target. Sub-projects only "dist" other sub-projects, not run their tests (so that when you're devving a sub-project, only the tests for the sub-project you're currently working on get run). And finally, changed the root Makefile to use the default target for each sub-project rather than "dist".

Let me know if you think this makes a bit more sense.