Makefile cleanup

Remove obsolete 'depend' target
Move AVR-specific targets to AVR makefile
Add TARGET variable to identify target to make and to clean
Tidy up dependency make
Split Makefile-SIM out from Makefile-AVR
Auto-dependencies cleanup

Dependency automation seems to be an aside in these makefiles.
Clean it up following ancient sage wisdom here:
http://mad-scientist.net/make/autodep.html

Auto-dependencies cleanup

Dependency automation seems a bit confused in these makefiles.
Clean it up following ancient sage wisdom here:
http://mad-scientist.net/make/autodep.html

In short, use -MMD to generate dependency files for each .o target,
and then use a sed script to extend that to avoiding "missing file"
dependencies when headers are renamed/removed.

Also, make everything dependent on makefiles other than our
autodependency (*.P) makefiles.

Make the BUILDDIR an order-only prerequisite for our targets so any
changed file therein does not cause all other files to appear to be
out of date.
In short, use -MMD to generate dependency files for each .o target,
and then use a sed script to extend that to avoiding "missing file"
dependencies when headers are renamed/removed.

Also, make everything dependent on makefiles other than our
autodependency (*.P) makefiles.