adds support for building the model of a program for which the classpath is incomplete

Why do you drop the original exception? I would like to have it stored within the SpoonException. I prefer exceptions this way ```throw new SpoonException("What exactly was the current task", occuredException);```

So
 ```java
throw new SpoonException("Couldn't define the arguments.", e);
```