Make /admin/body/import_csv supported fields clearer

A list makes these easier to scan
Make /admin/body/import_csv csv format clearer

- Use code tags to highlight field names
- Use pre tag to format example CSV as code
Use more semantic allow_blank validation
Add default blank string to PublicBody@short_name

The validation allows a blank short_name but the schema does not.
Annotate models

Should have been run after related migrations.
Could automate this to always run after migrations.
Clarify import_csv supported fields name attribute

https://github.com/mysociety/alaveteli/issues/1416

- Create a public body with name "Foobar"
- Now try to upload this CSV:

    #name,request_email,short_name
    Foobar Test,a@example.com,foobar

- The app raises the following exception:

    ERROR:  duplicate key value violates unique constraint
            "index_public_bodies_on_url_name"
    DETAIL:  Key (url_name)=(foobar) already exists.

---

The reason for this is that the CSV import looks up records by their
Name attribute. By attempting to rename the record, you're inadvertently
creating a new Public Body, since one with the name of "Foobar Test"
does not yet exist.
Add missing validation to PublicBody

There's a unique index on public_bodies url_name, so we should have a
validation for that.
Handle validation errors in PublicBody.import_csv

Specifically using save! so that anything other than an
ActiveRecord::RecordInvalid doesn't get missed

Note that ActiveModel::Errors#full_messages includes the attribute key
in the message. This is by design, so we should consider whether we can
improve the way that we use translated validation messages.
Remove unrecognised field from import_csv example

`id` is not a recognised attribute when uploading from a CSV.
Merge branch 'issues/1416-csv-update-public-bodies' into rails-3-develop