Is there a reason you subclassed `LicenseAgreement` rather than just adding a version to it? Are there cases where you want unversioned license agreements?