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
Same here. I don't think you'll need to cancel it if you close the handle