Revamp QuestDetails to have class generate Quest object.

Signed-off-by: Robert Xu <robxu9@gmail.com>