Refactor layer style to use a custom Legend interface instead of directly keep a reference to a geotools Style
Add interval legend support. Ongoing work: unstable and unfinished.