Some GNU-Make related changes

Hi Chris,

I did some Makefile related adaptions. I do not think it's something you would like to integrate into your code base but I hope it could be a starting point for some improvements.
Most changes are related to GNU-Make guidelines, especally standard variable names.
Furthermore I added some gcc optimizations. Some are related to AVR only, some are universal and could be used with other targets.
Sadly I suppose the patch will break windows builds. I have no Visual Studio test box here, therefore I cannot check it, sorry.
You will find more info in the commit message and the code of course...

Btw. Your book is really enlightening and a good reference for my daily job and hobby. Thanks alot ;-)

-Foka