Add the notes data type to jellyfish

Notes is documented at

http://tidepool-org.github.io/data-model/v1/notes.html

This is slightly complex because notes needs to be able to generate an id for any other data type.  So, I started (first two commits) with a refactoring to redefine how id generation is defined.  The third commit is then the addition of the notes data type.

@kentquirk Pls give this a once over
This doesn't seem right. The `displayTime` value is supposed to be the time that should be rendered for display.