Resolved AttributeInfo ownership issues

When returning objects from Q_INVOKABLE methods, by default the
JavaScript engine will take ownership of the objects and they will be
subject to garbage collection. Setting an explicit parent on the objects
is one way to avoid this problem.

Also made sure AttributeInfo::mDescription is properly initialized.