Clean up definition of notes

Add some newtypes etc.
Add documentation
Clean up parser code

Use attoparsec and remove crufty stuff. Some features removed for now,
will reconsider them and add even more in the future.