final (?) build system update

This pull request introduces a pattern rule for the build rules to match the one available for the configure rules.  There are two preliminaries and two more cosmetics commits that move around some lines for increased overall neatness.

Apart from the sheer joy of refactoring and reducing the whole makefile to little over 300 lines (bit over 200 nonempty), the build system now works as intended.  There are no stray continuous rebuilds and no strange build failures that go away with just a rebuild.

At this point, my patch queue is empty.  Enjoy your shiny new build system.  My total commit count is now at 99; clearly I need to find at least one more thing to contribute to S2E ;-p