Refactoring: create SourceListProvider on request
Refactoring: extract regex string as parameter
Refactoring: rename classes

SourceListProvider becomes ListProvider, and FileSourceListProvider
becomes PropertiesFilter. After that we can use them not only for source
list filtering.
Refactoring: rename method and extract parameter
Refactoring: each platform knows its default terminal
A bit ugly preparation for switchable terminals support
Add support for XTerm