Editable webform submissions
Webform is not necessary for the tasks you've outlined.

Simply create a content type, and grant the Anonymous user role access to create content of that type. 

To have 'hidden' fields which the admin can still edit, you can either hide those fields with CSS, deny access to them via the #access property through a hook_form_alter(), or use the Field Permissions module to restrict access to those specific fields. Note that the Field Permissions module has some performance implications.