Throw some exceptions, steal some docs from xogeny/recon