Has note interface and trait

Refactored Notes so that anything can have Notes, not just cases.