Backwards compatible fixes and features

More feature additions and bug fixes which came up when working on the CTK XNAT library.

- Result objects can now be created using a string id (via `QMetaType::construct()`)
- Http headers are copied into the qRestResult object
- Bug fixes related to error handling