Adapter for MS-GF+ search engine

This is an extension of pull request #803. It improves some parts of the code and solves the open issues mentioned in the comments (e.g. https://github.com/OpenMS/OpenMS/pull/803#issuecomment-55295789):
- generation of modifications file
- naming of parameters
- check for Java
- arguments of `QProcess::execute`
- test case

#803 can/should be closed.
just a suggestions: I find it useful and readable to use variables instead of numbers when accessing rows, i.e.
```
// TSV header: 
// example: 
const Size idx_?? = 0;
const Size idx_seq = 8;

for (...) {
  String seq = cutSequence_(elements[idx_seq ]);
...
```