High: pengine: Fixes use of colocation scores other than +/- INFINITY
A floating point error caused colocation scores other than
INFINITY to be calculated as a colocation score of 0. This
has been fixed by passing the score's factor as a float rather
than an int.
Since this patch involved modifying the callback function
used for merging scores, I took the opportunity to condense
some of the parameters into a single flags variable. This
will help facilitate some additional colocation improvements
I am working on in a separate patch later on.