rose metadata: fix title and length inheritance

Currently, the metadata inheritance function (in `macro.py`) does not distinguish between metadata for sections with modifiers (e.g. `namelist:foo{bar}`) and metadata for <i>variables</i> in sections with modifiers (e.g. `namelist:foo{bar}=baz`).

The code should now correctly inherit titles for these variables, and (as a side issue) improve the display of sections with modifiers. If you set a title on a section in the metadata:
```
[namelist:foo]
title=Foo Namelist
```

a section `namelist:foo{bar}` will now appear in `rose edit` as:

Foo Namelist {bar}

i.e. it includes the title.

As a side issue, variables that are themselves elements of an array (e.g. `env=SPAM(1)`) will no longer inherit the array `length` attribute - this should have been done before.

@matthewrmshin, please review.

The changes can be seen in the config editor by comparing the new app in the current `rose edit` with the new version.