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.
Not for this issue specifically. It has popped up a few times, missing semi colons, comparison suggestions, etc when `grunt` is ran.