added template.h to experiment with templates

each instance of encoder will require its own templated class
based on the pin numbers used for the interrupt.  The template.h
is me working out how to do this.
added a few working examples
added README and .reverse()

need to test .reverse() to make sure it gives the inverted
output of .motion()
Update README.md
Update README.md
debugged .reverse() function