Cluster summary rewrite

The ClusterSummary and ClusterSummaryProducer classes were updated to improve performance, as documented here:

https://its.cern.ch/jira/browse/CMSTRACK-51
(https://indico.cern.ch/event/322710/session/5/contribution/2/material/slides/1.pdf)
The only way I can see to do what you suggest would be to have a code parser that reads C++ and spits out python. Even then, since all python variables are mutable some one could still do
```
import enums
print enums.fred #prints 1
enums.fred = 5
print enums.fred #prints 5
```
In the few places (e.g. PoolSource) which really want enums, we just take a ```cms.string``` and then have a hand made ```std::map<std::string,enum type>```` used to do the translation from the configuration value to the value used in the code.