Removed friend class declaration as it is already contained in the Q_DECLARE_PRIVATE macro
Made parameters const references
Implemented Q_D and Q_Q paradigm