slightly nicer makefile, add button.cpp/h

button is a subclass of gpio adding debounce() but use with buttons. cheap
dirty hack really.