add grace handling

todo: we lose a note when an argument to grace is simply one note and the next one also. we should make it possible to push back one token to the source.