Major changes to the verification process, now raises errors instead of returning an object.