feat(forms): support custom scripts

Support custom scripts in forms.

* Scripts are executed using the cam-script directive
* Scripts can participate in the lifecycle of the form

related to #CAM