Mutable symbolizer properties for style functions

This change adds setters for symbolizer properties. In addition, it introduces a mutable flag on all styles. By default, this is set to `true`. `ol.style.createStyleFunction()` sets it to `false` for all static styles.

The new setters assert that the mutable flag is `true`, so whenever an application tries to set a symbolizer property on a style that was assigned to a vector layer or feature overlay, the assertion will fail.
Calling setStyle or dispatchChangeEvent on what object? What if the style you're modifying is set on a feature? This is what I mean by saying "needs clarification".