Flag merged clusters for relaxed CPE errors

Add a function "refineCluster" in SiStripClusterizer to mark SiStrip clusters as merged. Use this information StripCPEfromTrackAngle to fall back to the larger "legacy" CPE errors for these clusters. The flag lives on the high bit of the firstStrip_ private data member of the SiStripCluster. Configurable thresholds in the sensor occupancy and strip width are used to discriminate between un- and merged candidates. The cluster refiner is turned off as configured for this PR. (Note that it's also overridden by useLegacyError = cms.bool(True) in StripCPEfromTrackingAngle_cfi.)

I'm closing PR #6348, which was based on 7_2_0_pre6, in favor of this one, based on 7_3_0_pre2, though I haven't tested execution in this release.
Hi Andrea,

On 11/12/2014 06:33 AM, venturia wrote:

> …or a crazy suggestion: since SiStripQuality contains already the
> information from the cabling ES object, can the author(s) try to fix
> nchannideal = 768 (six APVs) and see that happens when they test
> "IsStripBad(detid,strip)"? If we are lucky the strips out of range in
> the four-APV modules could be declared as bad and we are done

Unfortunately not it seems.  Looping to 768 gives the correct answer for 
the six-APVs, but not for the four-APVs.  I printed out the nchannreal 
values calculated both ways side-by-side, and around the transition I 
quote here
767, 767
768, 768
768, 768
768, 768
768, 768
768, 768
768, 768
768, 768
768, 768
512, 768
511, 767
512, 768

The above includes an instance for each class of sensors having one bad 
channel.  The second result seems consistently to be 768 - (no. of bad 
channels).

Bill