form management is now split into:
- initial generation (typically in doGet)
- actual submitting (typically in beforePost) resulting in
- an error (permament or non-permament)
- a submission result
- redirect
- success message
- custom
- re-emitting if needed (typically in doPost)