MiniAOD for InputGenJetsParticleSelector

This PR adapts the InputGenJetsParticleSelector so it also works with miniAOD. The main difference between AOD and miniAOD is that in miniAOD a subset of GenParticles is stored in the following two collections:

* `prunedGenParticles`
* `packedGenParticles`

and InputGenJetsParticleSelector needs to access both collections in order to perform the same selection of GenParticles as in AOD where all GenParticles are stored in one collection, `genParticles`. Attached are a few comparison plots. Small differences between AOD and miniAOD are expected due to the loss of precision in the GenParticle (un)packing process.

![genjetscomparison_1](https://cloud.githubusercontent.com/assets/4885289/4550513/562a2bd6-4e67-11e4-8891-3c4f62e97f3c.png)
![genjetscomparison_2](https://cloud.githubusercontent.com/assets/4885289/4550515/562f9b52-4e67-11e4-9c15-ccfbeaadfa75.png)
![genjetscomparison_3](https://cloud.githubusercontent.com/assets/4885289/4550512/5629c13c-4e67-11e4-801f-34b36c14573b.png)
![genjetscomparison_4](https://cloud.githubusercontent.com/assets/4885289/4550514/562cb7c0-4e67-11e4-813a-134129c6ba68.png)
here and other parts of the code some comments would be helpful.
I couldn't make sense out of choosing stable vs unstable particles just from bare code