Fix for Some Bug in IntervalsLists

When you just pick up Notes and Rests, but one of the things has Chords,
the IntervalsLists used to crash, but now it doesn't.
Indentation Correction for models.ngram.IntervalNGram

All the tests worked before *and* after, and they *all* used this code
in __init__()... at least it's fixed now!
Added Safety Check in experimenter.py

In IntervalNGramStatistics and IntervalsLists, there's now a check to
make sure that what the experiment has at each offset is:
- from two parts
- a two strings
- (not a list, as from a Chord)
Revisions for Targeted Interval N-Gram Output with LilyPond

views/main.py:
- setVisible(True) the targeted n-gram selection QLineEdit

controllers/experimenter.py:
- LilyPondExperiment:
   - doesn't label "horizontal" events that are "None"
   - can add multiple annotations to one Note in annotation part, unless
     they're the same; automatically doesn't label those
- TargetedIntervalNGramExperiment:
   - works
Merge branch 'vis-stable' (was 'vis-9c')