Browse recursively for include from include path

Also suggest files from below the user-set include paths.
(Until now only files directly below the include paths had been
suggested.)

TODO:
- if the include paths contain identically named directories
  (I have several includes roots with a "layout" folder in it,
   other situations are quite plausible) then the next level will
   display a mixed (i.e. alphabetically sorted) list from all
   sources, which can be confusing).
   A suggestion is to group the autocompletion pop-up
   (something that would be good for other purposes too).
   There should be non-selectable group headers specifying
   - local files (relative to the document)
   - files from include paths
     - subheading for each include path
   - files from lilypond itself
   Group headings should only appear if there _are_ entries
   from it.
Merge pull request #401 from uliska/include-completion

Browse recursively for include from include path
Merge pull request #404 from PeterBjuhr/musicxml

MusicXML multiple voices in PianoStaff
Merge pull request #405 from PeterBjuhr/musicxml

MusicXML more fixes
move token_hash to docinfo, as discussed in issue #406
on saving autocompile not needed
add Page.image

as discussed in issue #406, todo: use it from the cache, without keeping
a pointer to the document...
Merge pull request #407 from PeterBjuhr/musicxml

MusicXML more fixes
Scaling of skips