Made branch for separation of Singer into an abstract class for various implementations for different sounding sounds
Made BasicSinger a validly inheritor of Singer. Although Audio still hasn't been changed to support the new structure of code
Moved the default timeGen function outside of the Singer type, generalized Singer, but measureToArray doesn't know how to handle two adjacent NoteNodes that both have children
Fixed a bug with MeasureToArray that made it not offset children nodes by their parent's location
Another offsetting problem with measuretoarray, that only surfaced on the 2nd level of recursion.

Tested to work up to like 6 levels of recursion, so I can safely say the fucntion now respects any setup of NoteNodes so long as they maintain their [0,1) range
Added Bass voice, rests, and musical key generator