xsd-fu: Generalise language type mapping (2)

- Generalise class properties and simplify Pojo template
- C++ source generation improvements
- C++ enum header generation
- Model default package

While this patchset does not include any functional code changes, it does update the comments for class properties, and it also removes unneeded whitespace in copy ctors.  PR#574 is a prerequisite.