FIX Checking for Versioned in LeftAndMain->save(), fixing admin/security saving

Regression caused by 5137ef9d in sapphire, which moved
writeWithoutVersion() from DataObject to Versioned
API Handle uncaught ValidationException on CMS controller execution

This removes the need for a lot of boilerplate code
around DataObject->write() logic, and avoids generic 500 errors
on user-level failures. This should really be a per-project choice,
but at the moment request handling doesn't allow to configure
custom exception handling.
Merge pull request #296 from chillu/pulls/validationexception-routing

API Handle uncaught ValidationException on CMS controller execution