Using new CMSForm class to allow for validation errors in CMS

This class allows deferring handling of responses to the parent
controller's response negotiator implementation.

Related framework PR: https://github.com/silverstripe/silverstripe-framework/pull/2084

See https://github.com/silverstripe/silverstripe-framework/pull/1814 for discussion.