Add Audio Node
Many thanks to @Sacharified for this PR.
adds an audio SourceNode type by moving the VideoNode's functionality to a generic MediaNode, and extending that MediaNode into Video and Audio nodes.
The new AudioNode class is essentially the same as the VideoNode class, with 2 differences:
- Creates an Audio element instead of a Video element
- Overrides the update method to prevent trying to paint the element to the canvas.