Backport context node schema from 2.1

This is a backwards compatible port of the context node changes
in Avocado 2.1 specifically to:

- Support the `field` key instead of `id` as the field identifier
- Support the `concept` key which is used to scope the `field`
- Support branches without children or one child to act as containers