Add an overload of setConditionFunction() that takes boost::function

Previously only function pointers were allowed, which made it impossible
to use class member functions as conditions for Euclidean clustering.
Merge pull request #1050 from taketwo/boost-function-in-cec

Add an overload of setConditionFunction() that takes boost::function