Fix small bugs in YAML IO.

Node::getValue can return null when a scalar value can’t be parsed
(e.g. no end quote found).
In Input::beginSequence(), we need to be careful about non-element
nodes in a sequence. null or ~ is okay, but any other non-sequence node
should raise an error. Previous implementation ignored these elements
(which could be confusing).
Several bug fixes related to omitted version in YAML.

Improve error reporting for empty yaml documents.
Error message defaults to version 1 when there is no version specified.
Added Header::validateVersionAndType() method; use it to validate yaml
input.
Check for subprocess terminated by signal in annotate.py.
Rename experimenter_data and enet_frame to just data.
Rename experimenter_id and exp_data in YAML.

Rename experimenter_id to just experimenter in Actions, Instructions,
and TableFeatureProperty.
Rename value to data in OFPAT_EXPERIMENTER.
Rename meter_bands to “bands” in METER_MOD.
Rename maxlen to max_len in OFPAT_OUTPUT
Changing from event: based rpc protocol to json-rpc 2.0.
Fix packet in test case.
More cleanup of old api server.
Additional references.