Add pre/post render functions and rewrite the rendering loop of symbol layers to allow exterior fills to be mixed with 'feature-wise' rendering