PLANNER-100: copied ScoreAttainedTermination to HardAndSoftScoreFeasibleTermination and implemented.
Instead of scoreAttained it uses feasibleScore (with values 0 as hardScore
and Integer.MIN_VALUE as softScore) to calculate time gradients.
Method isTerminated() was changed to check if given score is feasible.
PLANNER-100: <hardAndSoftScoreFeasible> support in solver config xml.