Almost done. Needs more quests and stuff but this is the general idea