Change score semantics, part I

Big refactoring, see #13 for details
Basic instances and combinators fixed
Remaining work: add Maybe (RestT) instances to transformer stack
Cleaning
Change score semantics, part II

Upon closer look, there should not be any transformer instances. Maybe
(or RestT etc) should not be in the note transformer stack. Most operations
operate on notes not rests (for example `legato`), and rests are implicitly
accounted for in the score structure.

We set the type of rest to `Score (Maybe a)`, then one can still write rests
with `mcatMaybes`.

Closes #13