Adds a comparator in a MappedLegend.
This way, we are able to consider String keys as Double keys when it
comes to sorting. Consequently, we can force a value classification made
on a numeric field to be coloured and sorted in the UI according to the
Double order rather than to the lexicographic String order.
Related to issue #478
Values are now sorted even when opening the simple style editor.
We have now a special treatment for AbstractRecodedLegend while
initializing the SSE.
Simpligy some code, stop hiding an NPE.
Remove suspicious return null
Merge pull request #488 from agueganno/recode-value-order

Fix recode value order (fixes #478)

Values of the value classifications displayed in the simple style editor where sorted according to the string lexicographic order, even for numeric values. This PR tries to change that by offering the ability to give a dedicated Comparator to a MappedLegend. We use this feature to have a dedicated order when dealing with AbstractRecodedLegend whose classification is made on a numeric field.

Such a Comparator is given when:
* creating classifications in the editor
* computing the classification in order to open the editor so that the display is good on opening