Added include_ly=True keyword to persist as_midi() and as_pdf() methods.

Explanation: the methods were previously implemented in such a way as to always
write an .ly file to disk (when writing either a midi file or pdf). The new
keyword allows the user to avoid writing out the .ly file and write out only
the midi file or pdf.

QUESTION: we now have persist(expr).as_pdf(pdf_file_path=None, include_ly=True)
as the method signature. The keywords are not alphabetized. Should we use
persist(expr).as_pdf(include_ly=True, pdf_file_path=None) instead? The
advantage will be alphabetized keywords; the disadvantage is that
persist(expr).as_pdf('~/foo.pdf') will no longer work.