agile: open Fix spelling of rountrip_type
engine: ensure move constructors work in inheritance hierarchies

We were not correctly delegating upwards when in the presence of a
dogen generated move constructor. Added a scenario to inheritance test
model for this.

While we were there, do other obvious mini-cleanups such as:

- ensure we always do a BOOST_CHECK when doing IO tests
- enable serialisation tests on enable_facet_serialization test
  model. Lack of serialisation testing on this model was so oxymoronic
  one couldn't pass it without fixing it.
- add move, copy and assignment tests to all test models