Express the deps better in Makefile

This means changing the grammar results in a recompile, for one thing.