Piezo default octave additions

Added isValidOctave function.
Added note function.
Added defaultOctave function.
Added tests for above.
Added defaultOctave to test tear down.
Update other tests to validate against non octave values.

Note: I'm only a couple of months into js development, if I have done anything non standard or not stuck to the correct form I would greatly appreciate the feedback or critique as it will speed up my grokking of javascript development.
I wasn't sure here if we should throw or not, currently junk values are just outright ignored. Perhaps at least some logging?