xsd-fu: Extend C++ support and add extra options

* xsd-fu no longer needs PYTHONPATH setting explicitly; updated
  ant and maven configurations accordingly.
* xsd-fu no longer requires the template path specifying manually;
  it defaults to the location of __file__, which is
  components/xsd-fu.
* xsd-fu generates sources and headers in separate passes, the
  new -f (filetype) option will select the type to generate.
* xsd-fu has additional options -q and -v to select quiet and
  verbose operation, respectively (default: verbose).
* xsd-fu has additional option -d to perform a dry run; this
  processes the model but does not generate sources; this is
  indended to allow users to obtain a list of source files
  which will be generated.  This can be used by e.g. cmake to
  generate a full dependency graph and regenerate sources on
  as needed.
* xsd-fu uses print_function from __future__; this will require
  python 2.6.
* Drop top-level "-src" dependencies; these are not necessary
  since this is taken care of by the per-component generate-source
  targets, and this also prevents some unnecessary multiple
  invocations of xsd-fu.
* Improve fu.py support for C++ types, including special casing
  fundamental and primitive types, handling keywords such as
  namespace and union in model objects, weak_ptr for references,
  using explicit namespaces where required, and introspection for
  required dependencies for header and source includes.
* Special case exlusion of warning message for EmissionFilterRef
  and ExcitationFilterRef; other warnings will still be printed.