Adds rest instances

The following are now implemented:

    instance HasArticulation a => HasArticulation (Maybe a) where
    instance HasPart a => HasPart (Maybe a) where
    instance HasPitch a => HasPitch (Maybe a) where

Closes #55 (may repopen if we need more)