In addition to D319, this patch updates the parameter editor, the UI of Freestyle.
Using new API functionality and experience gained in making D319, This patch provides a quite noticable speedup for commonly-used Freestyle linestyle modifiers.
As this patch touches a lot of code (and mainly the foundations) It is likely that mistakes are made.
I've made a regression suite for the Freestyle Python API, but testing with scenes used in production is very much appreciated.