Implemented Tone/NoTone

Implemented tone, noTone, and tone with duration using SetWaitableTimer. All tone calls are useable across multiple pins simultaneously.
Uses a map to keep track of running tones and Timers if used on those pins.
Also implemented testing scenarios around Tone and noTone
Why don't you have this call noTone so you only have one cleanup path?