fix matrix report aggregation bug

We can't use ```endRun```, because endRun is not async. endRun isn't executed right after matrix build finishing, but it's executed according its queue. So, with using jclouds, often endRun is executed, when slave is shutdown already
I dont get it. You need to move code 
```java
String curBuildNumber = Integer.toString(build.getNumber());
build.getWorkspace().child(reportDirPrefix + curBuildNumber)
```
to a separate method to reuse it intead of duplicating. How on earth is this a bad idea?