Documented BaseForm#addError
Added tests for BaseForm#addError

Added ErrorObject#hasField to check for existing field error messages
Tidying in utils.js and forms.js

cleanedData doesn't need to be returned from form.clean() any more, but if it is it will be set as form.cleanedData
Exported popProp and setDefault utility methods to isomorph
Made use of "field" argument consistent in ErrorObject