experimenting with abstracting some build logic

could use some work...
extracted avr-shake package